Python 中字符串也是一种数据类型,针对此数据总结下常用的方法
1,字符串截取,变量[头下标:尾下标],就可以截取相应的字符串,其中下标是从0开始算起,可以是正数或负数,下标可以为空表示取到头或尾
例如:
str = '0123456789′
print str[0:3] #截取第一位到第三位的字符
print str[:] #截取字符串的全部字符
print str[6:] #截取第七个字符到结尾
print str[:-3] #截取从头开始到倒数第三个字符之前
print str[2] #截取第三个字符
print str[-1] #截取倒数第一个字符
print str[::-1] #创造一个与原字符串顺序相反的字符串
print str[-3:-1] #截取倒数第三位与倒数第一位之前的字符
print str[-3:] #截取倒数第三位到结尾
print str[:-5:-3] #逆序截取
2,替换字符串replace(), 变量.replace("被替换的内容","替换后的内容"[,次数]),替换次数可以为空,即表示替换所有。要注意的是使用replace替换字符串后仅为临时变量,需重新赋值才能保存
例如:
str = 'akakak'
str = str.replace('k',' 8') # 将字符串里的k全部替换为8
print(str)
>> 'a8a8a8' # 输出结果
3,分割字符串split(),变量.split("分割标示符号"[分割次数]),分割次数表示分割最大次数,为空则分割所有,返回结果为list
例如:
src='niuhanyang,12345'
new_src=src.split(',')
print(new_src)
print(new_src[0])
print('1+2+3
1+2+3+4'.splitlines())#换行符分割,返回一个list
4,拼接字符串join(),将字符串、元组、列表中的元素以指定的字符(分隔符)连接生成一个新的字符串
语法: 'sep'.join(seq)
参数说明
sep:分隔符。可以为空
seq:要连接的元素序列、字符串、元组、字典
上面的语法即:以sep作为分隔符,将seq所有的元素合并成一个新的字符串
返回值:返回一个以分隔符sep连接各个元素后生成的字符串
例如:
print('+'.join(('hehe','haha','ee')))#以+拼接字符串
print(''.join(('hehe','haha','ee')))#拼接字符串
5,去掉指定字符lstrip(),rstrip(),strip(),生成一个新的字符串,参数为空时,默认为去掉空格和换行
例如:参数为空情况
print('lstrip:',' mysql
'.lstrip())#默认去掉左边的空格和换行
print('rstrip:','
mysql '.rstrip())#默认去掉右边的空格和换行
print('strip:','
mysql
'.strip())#默认去掉两边边的空格和换行
st = 'idashixiong wangjuanxi'
newst=st.strip('i') #去掉两边的字符i
print(newst)
![](https://images2017.cnblogs.com/blog/1235823/201710/1235823-20171013170209059-431000006.png)
6,大小写字母转换及判断
name = 'my name is niuniu,age is 3.'
print(name.capitalize()) # 首字母大写
print(name.center(100,'*'))#100个*,name放在中间
file_name ='a.png,fuck'
print(file_name.endswith('x'))#是否以x结尾
print(file_name.startswith('x'))#是否以x开头
print(file_name.find('g'))#查找字符的下标
print(file_name.index('fuck'))#查找字符串fuck的索引,即fuck首字母的下标
![](https://images2017.cnblogs.com/blog/1235823/201710/1235823-20171013172245449-1230105954.png)
print('%&(()()#¥23432sdfsd'.isalnum())#是否包含数字和字母
print('abA'.isalpha())#是否是英文字母
print('122'.isdigit())#是否是数字
print('123name'.isidentifier())#是否是一个合法的变量名
print('aaaaaAAAA'.islower())#是否是小写字母
print('AA'.isupper())#是否是大写字母
print('Loadrunner Book'.istitle())#是不是一个标题,判断首字母是否大写
print('adbefF'.lower())#变成小写
print('adbefF'.upper())#变成大写
print('ABCdef'.swapcase()) #大小写互换
7,查找find()、rfind(),ps:find()与index()功能相同,只是find找不到是返回-1,而index会直接报错,影响程序执行
语法:
str
.find(
str
, beg
=
0
end
=
len
(string))
str -- 此选项指定要搜索的字符串。
beg -- 这是开始索引,默认情况下为 0。
end -- 这是结束索引,默认情况下它等于字符串的长度
例如:
str1 = "this is oo is string example"
str2 = "exam"
print(str1.find(str2))
print(str1.find(str2, 10))
print(str1.find(str2, 40))
print(str1.rfind('is'))#返回从右边开始计算字符的下标,例如is从左边开始下标是5,右边是11
![](https://images2017.cnblogs.com/blog/1235823/201710/1235823-20171013175550652-140094334.png)
8、format格式化