字符串、整型相关
字符串操作:
1.简单操作
msg = '今天是个好日子,要学习字符串的详细内容,以及方法了' (标点符号也要计入下标)
1.1 下标: [ 1 ] Python中计数从0开始,下标(索引)查找如果过界就报错 index out of range
从左至右,是 0 → n
从右至左,是 -1 → -(字符串长度)
1.2 切片 (**顾头不顾尾**)
print(msg[ 1 : 5 ]) 通过切片查找,查找的长度不能超过下标长度,如果过界,就获取到最后一个内容
print(msg[ 5 : 9 : 1 ]) 切片+步长, 通过修改步长来改变查找方向,可以设置每一次走几步
** 小方法:起始位置+步长 不管 1 还是 -1 都好使
print(msg[ : 5 ]) 起始位置如果是0的时候可以不写
print(msg[ 5 : 7 ]) 到终止位置时候要加1 ,在切片的时候终止位置都比结果的下标多 1
print(msg[ : ]) 从头到尾 可以不写
1.3 步长(默认为1)
name = '德韦恩韦德'
print(name[1:5:1]),
print(name[ : : : ]) 第一个冒号是起始位置,第二个是终止位置,第三个是步长
1.4 判断是否是回文
n = input("请输入内容:") if n = n [ : : -1 ] : print( ' 回文 ' ) else : print('不是回文')
2. 常用操作
s = 'hard Word'
2.1 输入验证码实例:
*区分大小写
my_yzm = 'Long Higher'
yzm = input("请输入验证码:(Long Higher)")
if yzm == my_yzm:
print("验证码正确")
else:
print("请重新输入")
**不区分大小写:
my_yzm = 'Long Higher'
yzm = input("请输入验证码:(Long Higher)")
if yzm.lower() == my_yzm.lower() ###lower可以和upper替换
print("验证码正确")
else:
print("请重新输入")
2.2 字符串中常用的一些方法:
s = 'Lebron,James'
大小写(3个)
首字母大写: print(s.capitalize())
全部大写: print(s.upper())
全部小写: print(s.lower())
通过元素查找下标[](2个):
print(s.find('')), 没有就 返回-1
print(s.index('')), 没有就 报错
计数,结束和开始(3个)
计数: print(s.count('L')) 返回的是数量(字符串中L的数量)
结束: print(s.endswith('x')) 以什么结尾,返回的是 "True or False"
开始: print(s.startswith('A')) 以什么开始,返回的是 "True or False"
2.3 格式化操作1: format
num = 5
season = "秋天"
addr = "操场"
msg = "好想回到{}年前的那个{},那个{}".format(num,season,addr)
print(msg) #好想回到10年前的那个夏天,那个地方
num = 5
season = "秋天"
addr = "考场"
msg = "好想回到{0}年前的那个{1},那个{2}".format(num,season,addr)
print(msg) #好想回到10年前的那个夏天,那个地方
num = 10
season = "夏天"
addr = "地方"
msg = "好想回到{a}年前的那个{b},那个{c}".format(a = num,b = season,c = addr)
print(msg) #好想回到10年前的那个夏天,那个地方
格式化操作2: %s,%d;
name = input("姓名:") age = input("年龄:") addr = input("地址:") msg = '姓名:%s,年龄:%d,地址:%s'%(name,int(age),addr) print(msg)
实例: user = input("账号:") psd = input("密码:") msg = ''' ------------------------ 账号: 密码: ------------------------ ''' count = 0 while count< 3: i_user = input("账号:") i_psd = input("密码:") if i_user == user and i_psd == psd: print(msg%(user,int(psd))) break else: count += 1 print("你还有%d次机会"%(3-count))
格式化操作3: f" "(3.6以上的版本才可以实现)
f""(python3.6 版本以上才可以使用 ) name = input("姓名:") age = input("年龄:") msg = f"姓名:{name},年龄:{age}" print(msg)
2.4 join***
s = '很开心,很激动'
print('_'.join(s))
2.5 分割:split
s = 'aleijf'
print(s.split('j')) 从j开始分割
2.6 脱:strip **** 脱拖尾两边的空格和换行符\n
s = ' aleijf'
print(s.strip())
2.7 替换:replace ****
s = 'aleijf'
print(s.replace('','')) 第一个放要被替换的,第二个放替换内容
2.8 大小写转换:swapcase **** 唯一一个没有参数的
s = 'aleijf'
print(s.swapcase())
2.9 title:(特殊符号分割的每个单词首字母大写)
s = 'Al_xL EckL'
print(s.title())
2.10 ***is系列(2个)
isdigit,是否纯数字:
s = 'Al_xL EckL'
print(s.isdigit())
isalpha,是否汉字和字母:
s = 'Al_xL EckL'
print(s.isalpha())
关于整型:
在Python2中,有长整型.2^64在终端输出的结果最后有一个L,而在Python3中,只有整型,没有长整型.