Python-字符串操作

对字符串的内容进行判断,返回布尔类型

# -*- coding:utf-8 -*-
__author__ = "MuT6 Sch01aR"

print('python'.endswith('on')) #判断字符串是否以on结尾,返回布尔类型
print('python'.startswith('py')) #判断字符串是否以py开头 ,返回布尔类型
print('abc123'.isalnum()) #判断字符串是否仅为字母和数字组成,返回布尔类型
print('abc'.isalpha()) #判断字符串是否为纯字母组成,返回布尔类型
print('0x7c'.isdecimal()) #判断是否为十进制,返回布尔类型
print('1.2'.isdigit()) #判断是否为整数,返回布尔类型
print('abc'.isidentifier()) #判断字符串是否为一个合法的变量名,返回布尔类型
print('aBc'.islower()) #判断字符串是否全为小写字母,返回布尔类型
print('aBc'.isupper()) #判断字符串是否全为大写字母,返回布尔类型
print('1.2'.isnumeric()) #判断是否仅有数字,小数点也不行,返回布尔类型
print(' '.isspace()) #判断是否为空格,返回布尔类型
print('This Is A Title'.istitle()) #判断字符串是否为标题格式,返回布尔类型
print('abc'.isprintable()) #判断是否能打印,返回布尔类型

字符串的分割

# -*- coding:utf-8 -*-
__author__ = "MuT6 Sch01aR"

print('http://www.baidu.com'.partition('://')) #根据指定的分隔符对字符串进行分割
# 返回一个3元的元组,第一个为分隔符左边的字符串,第二个为分隔符本身,第三个为分隔符右边的字符串
# 如果分隔符在最左边,则第一个为空,如果分隔符在最右边,则第三个为空

print('http://www.baidu.com'.split('://')) #根据指定的分隔符对字符串进行分割
# 返回一个被分割的字符串列表,不包括分隔符
print('Pyt
hon'.splitlines()) #根据换行符进行分割

运行结果

字符串的格式化

# -*- coding:utf-8 -*-
__author__ = "MuT6 Sch01aR"

info = 'My name is {name} and my age is {age}'
print(info.format(name='John',age=23)) #字符串格式化
print(info.format_map({'name':'Jack','age':22})) #以字典格式把字符串格式化

运行结果

字符串的索引操作

# -*- coding:utf-8 -*-
__author__ = "MuT6 Sch01aR"

print('python'.index('o')) #打印字符串所在位置的索引值,如果没有会报错
print('python'.index('o',0,5)) #0为开始索引的索引值,5为结束索引的索引值
print('python'.find('t')) #打印字符串所在位置的索引,如果没有索引值为-1
print('Java'.rfind('a')) #从右往左找对应的字符串,如果有相同的字符,返回的为先找到的字符的索引,索引还是从左往右数

运行结果

字符串大小写的操作

# -*- coding:utf-8 -*-
__author__ = "MuT6 Sch01aR"

print('python'.capitalize()) #首字母大写

print('this is a title'.title()) #把字符串转换为标题格式

print('AbC'.lower()) #把字符串转为全小写
print('aBc'.upper()) #把字符串转为全大写

print('aBc'.swapcase()) #把字符串中的大写转化为小写,小写转化为大写

运行结果

字符串的填充

# -*- coding:utf-8 -*-
__author__ = "MuT6 Sch01aR"

print('python'.center(20,'-')) #把字符串居中,用'-'在左右填充到20个字符数

print('python'.ljust(25,'+')) #字符串在左边,右边用'+'把字符串填充到25个字符数
print('python'.rjust(30,'#')) #字符串在右边,左边用'#'把字符串填充到30个字符数

print('abc'.zfill(20)) #用0把字符串填充到20个字符数

name = 'John 	and Jack'
print(name.expandtabs(tabsize=20)) #把table键填充到第20位数为止

运行结果

字符串的计算

# -*- coding:utf-8 -*-
__author__ = "MuT6 Sch01aR"

print('python'.count('t')) #计算字母t的个数

运行结果

删除字符串的空格和换行符

# -*- coding:utf-8 -*-
__author__ = "MuT6 Sch01aR"

print(' abc '.strip()) #删除字符串两边的空格和回车
print('abc '.rstrip()) #删除字符串右边的空格和回车
print(' abc'.lstrip()) #删除字符串左边的空格和回车

运行结果

字符串的替换

# -*- coding:utf-8 -*-
__author__ = "MuT6 Sch01aR"

s = str.maketrans('abcdef','123456') #前后个数要对应
print('Java and perl'.translate(s)) #字母会被对应的数字替换

print('python'.replace('p','P')) #替换字符串

运行结果

字符串的连接

# -*- coding:utf-8 -*-
__author__ = "MuT6 Sch01aR"

print('+'.join(['1','2','3'])) #将序列中的元素以指定的字符连接生成一个新的字符串

运行结果

原文地址:https://www.cnblogs.com/sch01ar/p/8443122.html