Python中字符串的一些操作

Python中字符串的切片

>>> str1 = 'I love you'
>>> str1[:6]
'I love'

Python中字符串的索引

>>> str1[5]
'e'

Python中字符串的插入

>>> str1[:6] + '插入的字符串' +str1[6:]
'I love插入的字符串 you'

像比较操作符(> < =),逻辑操作符(and or not)成员操作符(in  not in) 和列表和元组是一样的。

把字符串的第一个字符改为大写 capitalize()

>>> str2 = 'xiaoxie'
>>> str2.capitalize()
'Xiaoxie'

把整个字符串的所有字符改为小写 casefold()

>>> str2 = 'DAXIExiaoxie'
>>> str2.casefold()
'daxiexiaoxie'

如果字符串中至少包含一个区分大小写的字母,并且这些字母都是小写,则返回True,否则返回False() islower()

>>> str6='12345678'
>>> str6.islower()
False
>>> str7='DIBIkiuh9090'
>>> str7.islower()
False
>>> str8='kkkkkksss0987'
>>> str8.islower()
True

如果字符串中至少包含一个区分大小写的字符,并且这些字符都是大写则返回True,否则返回False isupper()

>>> str9='Hello World'
>>> str9.isupper()
False
>>> str10='JKIUHFDF9090'
>>> str10.isupper()
True

转换字符串中所有大写字符为小写 lower() 转换字符串中所有小写字符为大写 upper()

>>> str11='jijijiSISISI'
>>> str11.lower()
'jijijisisisi'
>>> str11.upper()
'JIJIJISISISI'

 翻转字符串中的大小写 swapcase()

>>> str9
'Hello World'
>>> str9.swapcase()
'hELLO wORLD'

将字符串居中,并使用空格填充至长度width的新字符串 center(width)

>>> str2.center(60)
'                        DAXIExiaoxie                        '

返回sub在字符串里边出现的次数,start和end参数表示范围,可选 count(sub,start,end)

>>> str2.count('xi')
2
>>> str2.count('xi',3,10)
1

以encoding指定的编码格式对字符串进行编码 encoding(encoding='utf-8',errors='strict')

 

检查字符串是否以sub子字符串结束,如果是返回True,否则返回False,start和end参数表示范围可选 endswith(sub,start,end)

>>> str2.endswith('xi')
False
>>> str2.endswith('xie')
True
>>> str2.endswith('xie',0,6)
False

检查字符串是否以prefix开头,是则返回True,否则返回False,start和end参数可以指定范围检查,可选。startswith(prefix,start,end)

>>> str2
'DAXIExiaoxie'
>>> str2.startswith('DA',0,11)
True

把字符串中的tab符号(\t)转换成空格,如不指定参数,默认的空格数是tabsize=8,expandtabs([tabsize=8])

>>> str3='I\tlove\tfruit'
>>> str3.expandtabs()
'I       love    fruit'
>>> str3.expandtabs(4)
'I   love    fruit'

检测sub是否包含在字符串中,如果有则返回索引值,否则返回-1,start和end参数表示范围,可选 find(sub,start,end)

>>> str3.find('fr')
7
>>> str3.find('oi')
-1

跟find方法一样,不过如果sub不在string中会产生一个异常 index(sub,start,end)

>>> str3.index('fr')
7
>>> str3.index('oi')
Traceback (most recent call last):
  File "<pyshell#18>", line 1, in <module>
    str3.index('oi')
ValueError: substring not found

如果字符串至少有一个字符并且所有字符都是字母或数字则返回True,否则返回False isalnum()

>>> str3.isalnum()
False
>>> str4='sssssss'
>>> str4.isalnum()
True

如果字符串至少有一个字符并且所有字符都是字母则返回True,否则返回False isalpha()

>>> str4='sssssss'
>>> str4.isalpha()
True
>>> str5='ki98'
>>> str5.isalpha()
False

如果字符串只包含十进制数字则返回True,否则返回False isdecimal()

>>> str5='ki98'
>>> str5.isdecimal()
False
>>> str6='12345678'
>>> str6.isdecimal()
True

如果字符串只包含数字则返回True,否则返回False isdigit()

 

如果字符串是标题化(所有的单词都是以大写开始,其余字母均小写则返回True,否则返回False istitle()

>>> str9='Hello World'
>>> str9.istitle()
True

返回标题化(所有的单词都是以大写开始,其余字母均小写)的字符串 title()

>>> str12
'       jijiji     kllo    hhuuh'
>>> str12.title()
'       Jijiji     Kllo    Hhuuh'

去掉字符串左边的所有空格 Istrip()

>>> str12='       jijiji     kllo    hhuuh'
>>> str12.lstrip()
'jijiji     kllo    hhuuh'

去掉字符串右边的所有空格 rstrip()

>>> str13='   kloijhu knhy   nhgvff   '
>>> str13.rstrip()
'   kloijhu knhy   nhgvff'

删除字符串前边和后边所有的空格,chars参数可以制定删除的字符,可选。strip([chars])

>>> str16='      ddddnjjnjhsdgshjh   kjidhishs    kiskskks   dddnnnddd   '
>>> str16.strip()
'ddddnjjnjhsdgshjh   kjidhishs    kiskskks   dddnnnddd'
>>> str17=str16.strip()
>>> str17
'ddddnjjnjhsdgshjh   kjidhishs    kiskskks   dddnnnddd'
>>> str17.strip('ddd')
'njjnjhsdgshjh   kjidhishs    kiskskks   dddnnn'

找到子字符串sub,把字符串分成一个3元组(pre_sub,sub,flo_sub),如果字符串中不包含sub则返回('源字符串',' ',' ')  partition()

>>> str14='I love fruit'
>>> str14.partition('ov')
('I l', 'ov', 'e fruit')
>>> str14.partition('ff')
('I love fruit', '', '')

把字符串中的old子字符串替换成new子字符串,如果count指定,则替换不超过count次 replace(old,new [,count])

>>> str15='I love fruit'
>>> str15.replace('fruit','vagetables')
'I love vagetables'

>>> str15='I love fruit fruit fruit'
>>> str15.replace('fruit','vagetables',2)
'I love vagetables vagetables fruit'

不带参数默认是以空格为分隔符切片字符串,如果maxsplit参数有设置,则仅分割maxsplit个字符串,返回切片后的子字符串拼接的列表 split(sep=None,maxsplit=-1)

>>> str15
'I love fruit fruit fruit'
>>> str15.split()
['I', 'love', 'fruit', 'fruit', 'fruit']
>>> str15.split('i')
['I love fru', 't fru', 't fru', 't']

根据table的规则(可以由str.maketrans('a','b')定制)转换字符串中的字符 translate(table)

>>> str12
'       jijiji     kllo    hhuuh'
>>> str12.translate(str.maketrans('i','u'))
'       jujuju     kllo    hhuuh'

 

 

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值