1、首字母大写
>>name = "my name is fix zhang"
>>print(name.capitalize())
My name is fix zhang
2、统计字符串中的数量
>>name = "my name is fix zhang"
>>print(name.count("a"))
2
3、自动补全剩余字符,文字位于中间
>>name = "my name is fix zhang"
>>print(name.center(50, "-"))
---------------my name is fix zhang---------------
4、判断字符串以什么结尾
>>name = "my name is fix zhang"
>>print(name.endswith("ng"))
True
5、扩充标签长度
>>name = "my name is \tfix zhang"
>>print(name.expandtabs(tabsize=5))
my name is fix zhang #输出的时候把\t转换成5个空格。
6、查找字符串中字符的起始位置
>>name = "my name is fix zhang"
>>print(name.find("is"))
8
再次进行切片,从字符串的第15个位置开始到最后一个位置
>>print(name[name.find("zhang"):])
>>name = "my name is fix zhang"
>>print(name[name.find("is"):]) # :后面可以省略,代表到末尾。
is fix zhang
7、字符串中字符的赋值
>>name = "my name is {name},i am {age} old!".format(name="fix zhang", age="24")
>>print(name)
my name is fix zhang,i am 24 old!
使用字典的用法:
>>name = "my name is {name},i am {age} old!".format_map({"name": "fix zhang", "age": "24"})
>>print(name)
my name is fix zhang,i am 24 old!
8、判断是否为文字与数字的结合
>>name = "my name is fix zhang 24"
>>print(name.isalnum())
>>name = "mynameisfixzhang24"
>>print(name.isalnum())
False #空格存在即为False
True
9、判断是否为纯英文字符
>>name = "my name is fix zhang"
>>print(name.isalpha())
False #空格存在即为False
>>name = "zhang"
>>print(name.isalpha())
True
10、检查字符串是否只包含十进制字符,这种方法只存在于unicode对象。定义一个十进制字符串,只需要在字符串前添加 'u' 前缀即可。
>>name = u"my name is fix zhang"
>>name2 = u"232134124"
>>print(name.isdecimal())
>>print(name2.isdecimal())
False
True
11、判断是不是一个合法的变量名
>>name = "my name is fix zhang"
>>print(name.isidentifier()) # 例子中存在空格,所以为False。
False
12、判断是不是整数
>>name = "123"
>>print(name.isnumeric())
>>print(name.isdigit())
True # 不能判断为小数为真
True
>>name = "123.1"
>>print(name.isnumeric())
>>print(name.isdigit())
False
False
13、判断是不是一个标题,每个首字母大写
>>name = "My Name Is Fix Zhang"
>>print(name.istitle())
True
14、判断是不是一个空格
>>name = " "
>>print(name.isspace())
True
15、判断是不是可以打印
>>name = " "
>>print(name.isprintable())
True # tty文件不能打印,drive文件不能打印
16、判断是不是全为大写
name = "MY NAME IS FIX ZHANG 666"
print(name.isupper())
True
17、判断是不是全为小写
name = "my age is 24"
print(name.islower())
True
18、取列表的下标
>>name = ["my", 'name', 'is', 'fix', 'zhang']
>>print(name.index("fix"))
3
19、Join的用法
>>name = ["my", 'name', 'is', 'fix', 'zhang']
>>Dgd = "---".join(name)
>>print(Dgd)
my---name---is---fix---zhang
20、字符全体变小写
>>name = "MY NAME IS FIX ZHANG 666"
>>print(name.lower())
my name is fix zhang 666
21、字符全体变大写
>>name = "my name is fix zhang 666"
>>print(name.upper())
MY NAME IS FIX ZHANG 666
22、同时去掉两边的空格和回车
>>name = "这是前面", " fix zhang ".strip(), "这是后面"
>>print(name)
('这是前面', 'fix zhang', '这是后面')
23、maketrans的用法
p = str.maketrans("afinghzxp", "521668972")
print("fix zhang".translate(p))
217 98566 # 可以做随机加密
24、替换用法
>>name = "my name is fix zhang"
>>print(name.replace("i", "I"))
my name Is fIx zhang
只替换一个:
>>name = "my name is fix zhang"
>>print(name.replace("i", "I", 1))
my name Is fix zhang
25、找到最高位字符的下标
>>print("my name is fix zhang".rfind("m")) # 最高位下标
>>print("my name is fix zhang".find("m")) # 字符下面
5
0
26、split的分隔用法
>>number = "1+2+3+4+5+6"
>>print(number.split("+"))
['1', '2', '3', '4', '5', '6']
27、splitlines的分隔用法
>>space = "1+2\n3+4\n5+6"
>>print(space.splitlines())
['1+2', '3+4', '5+6'] # 不同操作系统的空格均可以分隔
28、swapcase的用法
>>print("my name is fix zhang".swapcase()) # 将数据拷贝一份并以大写覆盖小写后输出,反之亦然
>>print("My Name Is Fix Zhang".swapcase())
MY NAME IS FIX ZHANG
mY nAME iS fIX zHANG
29、把字符转换为标题
>>name = "my name is fix zhang"
>>print(name.title())
My Name Is Fix Zhang
30、zfill的用法
>>print("my name is fix zhang".zfill(25)) # 前面不够的用0补位代替
00000my name is fix zhang