Python中字符串的常用操作总结

这篇文章将总结Python中字符串的一些常用操作,如有不足之处还望补充。

1. 字符串的创建方式

(a) 直接创建: s = '12345'

(b) 利用str()函数创建: s = str(12345)    >>>'12345'

这里需要说明的是,在Python中单双引号是不加区别的,都可以用来表示字符串。

2. 字符串的访问

字符串也是一种序列,所以满足每一个元素对应一个索引值,索引从0开始。单个字符的访问:

s = '12345'

print(s[1])     >>> '2'

(a) 切片访问:切片访问由三个参数控制,其形式为[begin: end: step],如果没有特殊需求,step参数通常默认是不写的。

print(s[1: 3])  >>> '23'

print(s[1: 4: 2])   >>> '24'

print(s[1: ])   >>> '2345'

print(s[ :4])   >>> '1234'

3. 成员属性

用in和not in来判断某个字符是否存在于一个字符串中,如:print('1' in s)    >>> True

4. 字符串的运算

(a) 连接:用+来连接两个字符串,如

s1 = 'I am'

s2 = 'a man'

print(s1 + " " + s2)    >>>'I am a man'

(b) 重复:用*来重复字符串,如

print(s1 * 2)    >>> 'I am I am'

(c) 比较:字符串之间的比较,是逐一比较两个字符串对应字符的ascii码值的大小,如

s3 = 'abcde'

s4 = 'abce'

print(s3 > s4)   >>> False

5. 字符串的内建函数

(a) len(str):返回一个字符串的长度。

(b) max(str)、min(str):返回字符串中对应ascii码值最大、最小的字符。

(c) enumerate(str)、zip(str, str):返回字符串的enumerate型、zip型对象,以便在循环结构中使用。如

str1 = enumerate('abc')

for index, ele in str1:

    print(index, ':', ele)      >>> 1: 'a', 2: 'b', 3: 'c'

for i in zip('abc', '123')

    print(i)                       >>> ('a', '1'), ('b', '2'), ('c', '3')

在这里,我有个疑问一直没有解决,就是这里的索引值为什么是从1开始而不是从0开始的呢?欢迎大家在留言区讨论,让我涨涨知识。

(d) find()、index():用于判断某字符是否存在于一个字符串中,与上述in的功能一致。用法如下:

print(str1.find('ab'))     >>> 0   # find():若存在,则返回匹配部分最开始的那个位置的索引值,若不存在则返回-1。

print(str1.index('bc'))   >>> 1   # index(): 若存在,则返回匹配部分最开始的那个位置的索引值,若不存在则引发异常。

(e) isalnum():判断所有字符是否都为字母或数字,返回True或False。

(f) isalpha()、isdigit():分别用于判断所有字符是否都为字母、数字,返回True或False。

(g) isupper()、islower():分别用于判断所有字符是否都为大写、小写,返回True或False。

(h) replace():用于字符串的字符替换用法为str.replace(origin, new)。

s5 = '123456789'

s5.replace('456', 'abc')   

print(s)            >>> '123abc789'

(i) split()、partition():用于字符串的分割。

s6 = 'I am student'

s6.split(' ')      >>> ['I', 'am', 'student']   # 以空格为分隔符,将字符串分割并返回一个列表。

s6.partition(' ')    >>> ['I', ' ', 'am student']  # 以空格为分隔符,从出现的第一个位置起,将字符串分割成一个三元素的列表。

(j) join():用于字符串的连接,将括号中的str连接/分割开来,用法为(连接符).join(str)。

print(' '.join(['I', 'am', 'student']))   >>> 'I am student'

print('@'.join('abc'))   >>> 'a@b@c'

(k) upper()、lower()、swapcase():用于将字符串中小写字符转为大写、大写字符转为小写、大写转小写小写转大写。

(l) strip():删除字符串首尾的空格,简化字符串。

s7 = ‘ I am student ’

print(s7.strip())   >>>'I am student'

Python字符串的内建函数还有很多,以上只是一些常用的函数,希望对大家的学习有所帮助。

发布了31 篇原创文章 · 获赞 30 · 访问量 8万+

猜你喜欢

转载自blog.csdn.net/linchunmian/article/details/79463361