python-常见字符串操作

字符串是由一个个字符组成的有序序列,是不可变的,可索引,可迭代

索引访问

sql = 'select * from table ABC.AA'
print(sql[4])
#输出
c

字符串连接

1.join连接
将可迭代对象进行连接,连接的元素只能是str类型,返回一个新的字符串

lst = ['a','b','c']
lst1 = ' '.join(lst)#使用空格连接
print(lst1)
lst2 = '*'.join(lst)#使用*连接
print(lst2)
lst3 = '~~~'.join(lst)#使用~~~连接
print(lst3)
#输出
a b c
a*b*c
a~~~b~~~c

2.+连接
将多个字符串连接在一起,返回一个新的字符串

lst1 = ['a','b','c']
lst2 = ['1','2']
print(lst1 + lst2)
#输出
['a', 'b', 'c', '1', '2']

字符串分割

1.split(sep=None,maxsplit=-1) ,返回为列表
从左至右进行分割,sep为指定分隔符,缺省情况时尽可能多的空白字符作为分隔符,maxsplit为分割次数,缺省情况下分割整个字符,具体使用情况如下:

s = 'I am     a super student!'
print(s.split())#缺省,默认以尽可能多的空格作为一个分隔符
print(s.split(' '))#一个空格作为分隔符来进行分割
print(s.split('s'))#s作为分隔符
print(s.split('super'))
print(s.split(' ',maxsplit=2))#一个空格作为分隔符,只分割两次,生成三个元素
#输出
['I', 'am', 'a', 'super', 'student!']
['I', 'am', '', '', '', '', 'a', 'super', 'student!']
['I am     a ', 'uper ', 'tudent!']
['I am     a ', ' student!']
['I', 'am', '    a super student!']

rsplit(sep=None,maxsplit=-1),从右向左开始进行分割

s = 'mm/nn/fff'
print(s.rsplit('/',1))#只分割一次
#输出
['mm/nn', 'fff']

2.partition(sep)
sep,即分隔符必须指定,从左向右开始分割,使用分隔符将字符串分为两部分,范围为一个元组,包含头,分隔符,尾

 s = 'I am a super student!'
print(s.partition('s'))
#输出
('I am a ', 's', 'uper student!')

rpartition(seq),从右至左开始分割

s = 'I am a super student!'
print(s.rpartition('s'))
#输出
('I am a super ', 's', 'tudent!')

字符串修改

1.replace(old,new)
用新字符串来替换旧的字符串,返回新字符串

s = 'www.baidu.com'
print(s.replace('w','o'))
#输出
ooo.baidu.com

2.strip(chars)
从字符串两端去除指定字符集chars中的所有字符,缺省情况下去除头尾所有空白字符,返回新的字符串

s = '  I am very very sorry  '
print(s.strip())#去除头尾所有空格
print(s.strip(' very'))#头尾中符合其中五个元素的任意一个即进行去除
print(s.strip('y'))
#输出
I am very very sorry
I am very very so
  I am very very sorry  

字符串查找

1.find()
从指定区间返回索引,找不到就返回-1

s = 'I am very very sorry'
print(s.find('very'))
print(s.find('very',6,13))#6-13位为ery ver不包含要查找的值
#输出
5
-1

2.index()
在指定区间进行查找,找到即返回索引,没有抛出异常

s = 'I am very very sorry'
print(s.index('very'))
print(s.index('very',6,13))#找不到抛出异常
#输出
5

3.count(),指定区间内出现的次数

字符串大小写

1.upper(),全大写
2.lower(),全小写
3.swapcase(),大小写交互
4.title(),标题的每个单词大写
5.capitalize(),首个单词大写

字符串其他操作

1.endswith(xx),是否以xx结尾
2.startswith(xx),是否以xx开头
3.isalnum(),是否是数字和字母组成
4.isalpha(),是否是字母
5.isdecimal(),是否只包含十进制数字
6.isdigit(),是否全部为数字
7.isidentifier(),是不是字母和下划线开头,其他都是字母、下划线、数组
8.islower(),是否全部小写
9.isupper(0,是否全部大写
10.isspace(),是否只包含空白字符

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值