python字符串常用操作方法
首先强调一下:字符串属于不可变数据类型,也就是说python创建一个字符串后,你不能把这个字符串的某一部分改变,任何上面的函数改变了字符串后,
都会返回一个新的字符串,源字符串并没有改变。
下面总结一下python字符串常用操作,如字符串的替换,删除,切片截取、复制、连接、比较、查找、分割、与列表的相互转换,倒置,排序,,判断等。
1、替换str.replace(str1,str2,num) 用str2替换掉str1 num是次数,默认从左往右
str_1 = "Welcome to python ha ha"
str_2 = str_1.replace('ha', 'Hi', 1).replace('to', 'using')
print(str_2)
>>>"Welcome using python Hi ha"
print(str_1)
>>>"Welcome to python ha ha" # 原字符串的值不变 字符串属于不可变类型数据
2、删除
str.strip(str1) 删除字符串两边的指定字符,括号的写入指定字符,默认为空格
str.lstrip(str1) 删除字符串左边的指定自字符
str.rstrip(str2) 删除字符串右侧指定字符,默认空格
str_1 = ' hello '
str_2 = str_1.strip()
print(str_2)
>>> 'hello'
str_3 = str_1.lstrip()
print(str_3)
>>>' hello'
3、切片截取str[::]
4、复制
str_1 = 'mjy'
str_2 = str_1
print(str_2)
mjy
5、连接 +
str_1 = 'hello'
str_2 = 'girl'
str_3 = str_1 +str2
print(str_3)
'hello girl'
6、比较cmp(X, Y)
python3已经没有该方法
比较两个对象,并根据结果返回一个整数。X< Y,返回值是负数 ,X>Y 返回的值为正数
```python
python2
cmd(2, 1)
1
cmd(1, 2)
-1
python3 没有cmd()方法,只能用>和<进行比较(可对字符串进行比较)
cmd(2, 1)
"name 'cmd' is not defined"
7、查找
str.find() str.index()功能相同,区别在于find()查找失败会返回-1,不会影响程序运行。一般用find!=-1或者find>-1来作为判断条件。
str.index:检测字符串中是否包含子字符串str,可指定范围,查找失败会报错
另外还有 str.rfind(str1, start, end)/str.rindex() 从尾部开始查找
str_1 = 'hello world'
str_1.index('l')
>>>2
#str.find:检测字符串中是否包含子字符串str,可指定范围
str_1 = 'hello world'
str_1.find('l')
>>>2
str_1.find('x')
>>>-1
8、分割
str.split(str1)根据指定子字符串对字符串进行分割 默认根据空格对字符串进行分割,结果是列表
str_1 = 'hello, girl'
res = str_1.split(',')
print(res) # 结果是列表
>>>['hello', 'girl']
9、与列表相互转换
```python
把列表中的元素以指定的字符连接成字符串
res = ['hello', 'girl']
str_1 = ('@').jion(res)
print(str_1)
'hello@girl' # 拼接的字符串结果
str_2 = (',').join(res)
print(str_2)
'hello,girl'