今天学习内容总结
程序员文章站
2022-07-05 14:20:37
字符串 name = 'Jim' # name = str('jim') str1 = str(1.1) str2 = str([1, 2,3]) print(f'str1:{str1} ,str1_type:{type(str1)}') print(f'str2:{str2},str2_type: ......
字符串
name = 'jim' # name = str('jim') str1 = str(1.1) str2 = str([1, 2,3]) print(f'str1:{str1} ,str1_type:{type(str1)}') print(f'str2:{str2},str2_type:{type(str2)}') ''' 结果: str1:1.1 ,str1:<class 'str'> str2:[1, 2, 3],str2_type:<class 'str'> 自己总结:str()或者单双引号定义之后在内存中就是字符串,不管是任何形式? '''
按索引取和值切片(只读不能写)
name = 'cyberpunk2077' print(name[0]) print(name[-1]) #负数从有往左从1开始取值 print(name[2:5]) #顾头不顾尾切片 print(name[2:]) #不写默认到末尾 print(name[1:9:2]) #在位置1-9之间步长为2取值 print(name[2::-2]) #步长为负数从右往左取值 ''' 结果: c yepn c 7 ber berpunk2077 yepn bc '''
成员运算in和not in,返回布尔值
str.strip(),其中str.lstrip()和str.rstrip()分别是去除左边和右边的
name = " cyber punk 2077 " print(name.strip()) ''' 结果: cyber punk 2077 默认去除两端的空格 '''
str.split(),其中str.rsplit()从右边开始切割
name = " cyber pu:nk 2077 " print(name.split()) print(name.split(':')) ''' 默认空格切割返回一个列表 ['cyber', 'pu:nk', '2077'] [' cyber pu', 'nk 2077 '] '''
for循环返回每个字符
name = ' ji:m ' for i in name: print(i) ''' 结果: j i : m '''
lower()和upper() 字母变小写和大写
name = 'cyberpunk2077' print(name.lower()) print(name.upper())
stratswith()和endswith() 判定开头和结尾
name = 'cyberpunk2077' print(name.startswith('c')) print(name.endswith('7')) ''' 结果: false true '''
str.isdigit():字符串是否只有数字组成,是返回true,不是返回false(相似的有str.isdecimal()、str.isnumric(),前者检查是否包含十进制字符,后者检查是否只包含数字字符)
year = '2077' π = '3.14159' print(year.isdigit()) print(π.isdigit()) ''' 结果: true false '''
str.find(str1):如果发现找到str1在str中,并返回第一次开始的索引值,否则返回-1;str.rfind()则是从右往左,也就是最后一次出现的位置,没有找到返回-1
str = "this is really a string example....wow!!!"; substr = "is"; print str.rfind(substr); print str.rfind(substr, 0, 10); print str.rfind(substr, 10, 0); print str.find(substr); print str.find(substr, 0, 10); print str.find(substr, 10, 0); ''' 结果 5 5 -1 2 2 -1 '''
str.index()和str.rindex()同上一个方法这区别是找不到的时候报错
str.count()同上一个方法,只是它只为了记数,出现了多少次
str.center()、str.ljust()、str.rjust():默认空格填充到指定长度的字符穿,str在填充之后的中间,左边,右边;str.zfill()是0填充
str.captalize()、str.swapcase()、str.title():开头第一个字母转大写,其他全小写;大小写互转;每个单词开头字母大写