1.字符串操作符
比较操作符:字符串大小按ASCII码大小进行比较
a>A b>a
切片操作符: [],[:],[::]
[n]:取字符串的某n个字符
[n:m]:取字符串第n到第m个字符显示效果为m-n,当m=2,n=1时只显示一个字符
[n:m:d]:取字符串第n到第m个字符,以d间隔
>>>str="abc123def"
>>>str[1]=b
>>>str[1:3]=bc
>>>str[::2] #每隔两个字符取一个
>>>ac2df
2.格式化字符串
学过C语言的人应该知道,c语言是要有占位符才能输出变量的,不像java可以直接用
C语言的格式如下 : print ("%d",&a);
python语言稍有不同:print ("%d" % a)
提示:变量必须与占位符类型一致
比如python下:
a=1 #没加双引号或单引号代表数字类型
a=1.2 #没加双引号但是为小数代表浮点类型,浮点类型如果用%d则只输出整数位
a='1' #加单引号并且只有一个字符代表字符类型
a='12' #加单引号但是大于一个字符代表字符串
下面的表格是占位符对应变量的类型
3.字符串内建函数
string.capitalize():把字符串第一个字符大写
>>> str
'assdsada'
>>> str.capitalize()
'Assdsada'
string.center(width):返回一个用空格填充至长度width的新字符串,width只有大于字符串长度才能看到效果
>>> str.center(20)
' assdsada '
string.count(str,beg=0,end=len(string)):返回str在string里面出现的次数,从beg到end
>>> str.count("sd",0,len(str))
1
string.endswith(str,beg=0,end=len(string)):检查字符串是否以str结束,如果是返回True,不是返回False
>>> str
'assdsada'
>>> str.endswith("da",0,len(str))
True
>>> str.endswith("aa",0,len(str))
False
string.islower():如果string中包含至少一个区分大小写的字符,则返回True
>>> str2='SADAS'
>>> str2.islower()
False
>>> str2=str2+"a"
>>> str2
'SADAS1a'
>>> str2.islower()
False
string.strip():删除字符串两端的空白
string.upper():将字符中的小写字母转换为大写
4.format格式化函数
位置参数:
format 函数可以接受不限个参数,位置可以不按顺序。使用数字来获取变量,以0开始
格式:'{}{}'.format('','')
>>> 'my name is {},age {}'.format('libai',18)
'my name is libai,age 18'
>>> 'my name is {1},age {0}'.format('libai',18)
'my name is 18,age libai'
关键字参数:
格式:'{}{}'.format(key1=value1,key2=value2)
>>> 'my name is {name},age {age}'.format(name='libai',age='18')
'my name is libai,age 18'
数字格式化:
格式: '{:.}'.format(数字)
>>> '{:.2f}'.format(3.1415926)
'3.14'
>>> '{:^20.2f}'.format(3.1415926)
' 3.14 '
3.1415926 | {:.2f} | 3.14 | 保留小数点后两位 |
3.1415926 | {:+.2f} | +3.14 | 带符号保留小数点后两位 |
-1 | {:+.2f} | -1.00 | 带符号保留小数点后两位 |
2.71828 | {:.0f} | 3 | 不带小数(四舍五入) |
5 | {:0>2d} | 05 | 数字补零 (填充左边, 宽度为2) |
5 | {:x<4d} | 5xxx | 数字补x (填充右边, 宽度为4) |
10 | {:x<4d} | 10xx | 数字补x (填充右边, 宽度为4) |
3.1415926 | {:^20.2f} | 3.14 | 左右填充20个空格并且保留两位小数 |
使用索引:
格式:'{0[]}{0[]}'.format(['',''])
>>> 'my name is {0[0]},age {0[1]}'.format(['libai',18])
'my name is libai,age 18'