Py学习  »  Python

python中字符串的基本操作汇总

生信修炼手册 • 3 年前 • 468 次点击  

欢迎关注”生信修炼手册”!

字符串是文本操作的核心,在python中字符串是string类的实例,在string模块中,定义了很多的常量

>>> import string
>>> string.ascii_letters
'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
>>> string.ascii_lowercase
'abcdefghijklmnopqrstuvwxyz'
>>> string.ascii_uppercase
'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
>>> string.digits
'0123456789'
>>> string.hexdigits
'0123456789abcdefABCDEF'
>>> string.octdigits
'01234567'

主要是数字和字符串,同时也提供了很多的方法,包含以下几类

1. 大小写转换

用法如下

# 首字母大写,其他字符不变
>>> 'abc'.capitalize()
'Abc'
# 全部转换为大写
>>> 'abc'.upper()
'ABC'
# 全装转换为小写
>>> 'abc'.lower()
'abc'
# 全部转换为小写
>>> 'abc'.casefold()
'abc'
# 首字母大写,其他字母小写
>>> 'ABC'.title()
'Abc'
# 大小写互换,大写变小写,小写变大写
>>> 'Abc'.swapcase()
'aBC'

2. 去除空白字符

用法如下

# 去除字符串开头和末尾的空白字符
>>> ' ABC '.strip()
'ABC'
# 去除开头的空白字符
>>> ' ABC '.lstrip()
'ABC '
# 去除末尾的空白字符
>>> ' ABC '.rstrip()
' ABC'


不提供参数的情况下,以上函数的作用就是去除空白字符,也可以提供参数,去除指定字符,示例如下

>>> 'ABC'.strip('C')
'AB'

3. 字符串查找和替换

用法如下

# 从开头查找,返回第一次匹配的索引
>>> 'ABC'.find('A')
0
# 从末尾查找,返回第一次匹配的索引
>>> 'ABC'.rfind('A')
0
# 从开头查找,返回第一次匹配的索引
>>> 'ABC'.index('A')
0
# 从末尾查找,返回第一次匹配的索引
>>> 'ABC'.rindex('A')
0

4.  模式判断

判断字符串是否符合某种特征,用法如下

# 以指定字符开头
>>> 'ABC'.startswith('A')
True
# 以指定字符结尾
>>> 'ABC'.endswith('C')
True
# 是否全是字母
>>> 'ABC'.isalpha()
True
# 是否全是数字
>>> 'ABC'.isnumeric()
False
# 是否全是数字
>>> 'ABC'.isdigit()
False
# 是否全是数字字母
>>> 'ABC'.isalnum()
True
# 是否全是数字字母
>>> 'ABC'.isascii()
True
# 是否全是空白
>>> 'ABC'.isspace()
False
# 是否全是可打印字符
>>> 'ABC'.isprintable()
True
# 是否符合标题样式,首字母大写, 其他字符小写
>>> 'ABC'.istitle()
False
# 是否全是小写字符
>>> 'ABC'.islower()
False
# 是否全是大写字符
>>> 'ABC'.isupper()
True

4.  字符串对齐

将字符串用指定字符填充为等长,用法如下

# 在开头和结尾进行填充,字符串居中对齐
>>> 'ABC'.center(7, '0')
'00ABC00'
# 在开头进行填充,只可以用0填充,右对齐
>>> 'ABC'.zfill(7)
'0000ABC'
# 在末尾进行填充,左对齐
>>> 'ABC'.ljust(7, '1')
'ABC1111'
# 在开头进行填充,右对齐
>>> 'ABC'.rjust(7, '1')
'1111ABC'

5. 字符串的连接与分割

>>> '\t'.join(['A', 'B', 'C'])
'A\tB\tC'
>>> 'A\tB\tC'.split("\t")
['A', 'B', 'C']

相比其他数据类型,字符串的内置方法很多,由此也可以看出字符串的重要性。除了这些基础操作,还需要进一步掌握字符串的格式化,以及正则表达式,这些在后续文章中再详细介绍。

·end·

—如果喜欢,快分享给你的朋友们吧—



原创不易,欢迎收藏,点赞,转发!生信知识浩瀚如海,在生信学习的道路上,让我们一起并肩作战!
本公众号深耕耘生信领域多年,具有丰富的数据分析经验,致力于提供真正有价值的数据分析服务,擅长个性化分析,欢迎有需要的老师和同学前来咨询。
  更多精彩



  写在最后


转发本文至朋友圈,后台私信截图即可加入生信交流群,和小伙伴一起学习交流。


扫描下方二维码,关注我们,解锁更多精彩内容!


一个只分享干货的

生信公众号


Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/62596
 
468 次点击