字符串
字符和元组很相似
>>> str1 = 'I have a dog'
>>> str1[:5]
'I hav'
>>> str1
'I have a dog'
>>> str1[5]
'e'
>>> str1[:4]+'插入字符串'+str1[4:]
'I ha插入字符串ve a dog'
>>>
字符串的操作和元组也很相似,而且更多
————字符串常用方法
———增加(无)
———获取
count(sub [,start[,end]])
返回sub在字符串里出现的次数,start和end参数表示范围,可选
>>> str3
'draGDGdeeloo'
>>> str3.count('d')
2
>>>
find(sub [,start[,end]])
检查sub是否包含在字符串中,有则返回索引值,否返回-1,start 和 end参数表示范围,可选
>>> str5
'I\tlove\tzhuling'
>>> str5.find('zhu')
7
>>>
rfind(sub [ ,start[ , end]])
类似与find()方法,但是从右边找起
title()
返回标题化的字符串
zfill(width)
返回长度为width的字符串,原字符串右对齐,前边用0填充
———修改
capitalize()
把字符串的第一个字符改为大写
>>> str2 = 'dragonlongli'
>>> str2.capitalize()
'Dragonlongli'
>>>
casefold() 把字符串全部字符改为小写
>>> str3 = 'draGDGdeeloo'
>>> str3.casefold()
'dragdgdeeloo'
>>>
center(width)
将字符串居中,width是新字符串长度,不足部分用空格填充
encode(encoding='utf-8', errors='strict')
以encoding指定的编码格式对字符串进行编码
expandtabs(tabsize = 8)
将字符串中的tab符号(\t)转换为空格,如不指定参数,默认空格是tabsize=8
>>> str5
'I\tlove\tzhuling'
>>> str5.expandtabs()
'I love zhuling'
>>>
join(sub)
以字符串作为分隔符,插入到sub中所有的字符之间。
>>>
>>> str2 = 'dragolong'
>>> str2.join('123')
'1dragolong2dragolong3'
>>>
ljust(width)
返回一个左对齐字符串,并使用空格填充至长度为width的新字符串
lower()
转换字符串中所有大写字符为小写。
upper()
转换字符串中所有小写字符为大写
lstrip()
去掉字符串左边的所有空格
>>> str3 = ' I love'
>>> str3.lstrip()
'I love'
>>>
rstrip()
删除字符串末尾的空格
partition(sub)
找到子字符串sub,把字符串分成一个3元组,如果字符串中不包含sub则返回原字符串(‘原字符串’, ' ' , ' '),返回一个元组。
>>> str4
'I love zhuzhuxia'
>>> str4.partition('ve')
('I lo', 've', ' zhuzhuxia')
>>>
replace(old ,new [ , count])
把字符串中的old子字符串替换成new子字符串,如果count指定,则替换不超过count次
split(sep=None,maxsplit=-1)
不带参数默认是以空格为分隔符切片字符串,maxsplit参数有设置,则分割maxsplit个子字符串,返回切片后的子字符串拼接的列表。
**注意!:split切片有损耗,切片字符会丢弃。
>>> str4
'I love zhuzhuxia'
>>> str4.split()
['I', 'love', 'zhuzhuxia']
>>> str4.split(maxsplit=2)
['I', 'love', 'zhuzhuxia']
>>> str4.split(maxsplit=1)
['I', 'love zhuzhuxia']
>>>
>>> str4
'I love zhuzhuxia'
>>> str4.split('h')
['I love z', 'uz', 'uxia']
>>>
splitlines((keepends))
按照\n分隔,返回一个包含各行作为元素的列表,如果keepends参数制定,则返回keepends行。
strip([chars])
删除字符两边所有的空格,chars参数可以定制删除的字符,可选。
>>>
>>> str7 = ' ssssAAAAssss '
>>> str7.strip()
'ssssAAAAssss'
>>> str7 = str7.strip()
>>> str7.strip('s')
'AAAA'
>>>
swapcase()
反转字符串中的大小写
>>> str6 = 'DdrgonLongSiSi'
>>> str6.swapcase()
'dDRGONlONGsIsI'
>>>
translate(table)
根据table的规则(可以有str.maketrans('a','b')定制)转换字符串中的字符
>>> str7
'ssssAAAAssss'
>>> str7.translate(str.maketrans('s','b'))
'bbbbAAAAbbbb'
>>>
———查找
endswith(sub [,start[,end]])
检查字符串是否以sub结尾,是返回true,否返回false,start 和end参数表示范围,可选
>>> str4
'longsi is good boy'
>>> str4.endswith('boy')
True
>>> str4.endswith('go')
False
>>>
Startswith(prefix [ ,start[,end]])
检查字符串是否一prefix开头,是返回true,否返回false,start 和 end参数可以指定检查范围,可选。
isalnum()
如果字符串至少有一个字符,并且所有字符都是字母,或者数字,则返回true,否则返回false
isalpha()
如果字符串至少有一个字符,并且所有字符都是字母则返回true,否则返回false
isdecimal()
如果字符串只包含十进制数字则返回true,否则返回false
isdigit()
如果字符串只包含数字则返回true,否则返回false
islower()
如果字符串中至少包含一个区分大小写的字符,并且这些字符都是小写,则返回true,否则返回false
isnumeric()
如果字符串中只包含数字字符,则返回true,否则返回false
istitle()
如果字符串是标题化(所有的单词都是一大写开始,其余字幕均为小写),则返回true,否则返回false。
isupper()
如果字符串中的字符都是大写,返回true,否则返回false。
—————格式化
replacement 字段
format()方法
位置参数
>>> '{0} love {1} {2}'.format('I','xiao','zhu')
'I love xiao zhu'
>>>
关键字参数
>>> '{a} love {b} {c}'.format(a='I',b='xiao',c='zhu')
'I love xiao zhu'
>>>