目录
一、大小写转换
1、 capitalize
def capitalize_demo(): #首字母大写其他小写
a="abblaHYCDsdj"
print(a.capitalize())
print(a)
capitalize_demo()
#输出结果 Abblahycdsdj
2 、casefold
def casefold_demo(): #将所有大写字符转换为小写
a="jdsOYTHjlkA叁肆一"
print(a.casefold())
casefold_demo()
#输出结果 jdsoythjlka叁肆一
3 、lower
def lower_demo(): #将所有大写字符转换为小写
a = "abcABC"
print(a.lower())
lower_demo()
#输出结果 abcabc
4、 upper
def upper_demo(): #将字符串转换为大写
a = "kjdhaHHH"
print(a.upper())
upper_demo()
#输出结果 KJDHAHHH
5 、swapcase
def swapcase_demo(): #转换字符串大小写
a = "abcdefgHIJKLMN"
print(a.swapcase())
swapcase_demo()
#输出结果 ABCDEFGhijklmn
6、 title
def title_demo(): #返回"标题化"的字符串,就是说所有单词都是以大写开始,其余字母均为小写
a = "studentGrades"
print(a.title())
title_demo()
#输出结果 Studentgrades
二、查找
1、count
def count_demo(): #返回字符在字符串里出现的次数
a="abcdeabca"
print(a.count("a",3,9)) #参数分别是待搜索字符,开始位置,结束位置
count_demo()
#输出结果 2
2、endswith
def endswith_demo(): #检查字符串是否以指定字符结尾
a="abcdeabca"
print(a.endswith("a")) #参数分别是待搜索字符,开始位置,结束位置
endswith_demo()
#输出结果 True
3、find
def find_demo(): #指定范围内查找字符串,若存在返回索引,若无返回-1
a="kahduiqhfbsd"
print(a.find("a",0,1)) #参数分别是待查找字符,开始位置,结束位置
find_demo()
#输出结果 -1
4、rfind
def rfind_demo(): #从右边查找字符,返回第一个找到的索引,若无返回-1
a = "abdcdefg"
print(a.rfind("d"))
rfind_demo()
#输出结果 4
5、index
def index_demo(): #查找字符串,若有返回索引,若无报错
a = "abcdefg"
print(a.index("c"))
# print(a.index("k"))
try:
print(a.index("k"))
except Exception as e:
print(e)
index_demo()
#输出结果
2
substring not found
6、rindex
def rindex_demo(): #从右边查找字符,返回第一个找到的索引,若无报错
a = "abcdedfg"
print(a.rindex("d"))
rindex_demo()
#输出结果 5
三、替换
1、expandtabs
def expandtabs_demo(): #将tab转换为空格
a="ab cdea bca"
print(a.split(" "))
b=a.expandtabs()
print(b.split(" "))
expandtabs_demo()
输出结果
['ab', '', '', '', '', '', '', 'cdea', 'bca']
['ab', '', '', '', '', '', '', 'cdea', 'bca']
2、replace
def replace_demo(): #替换字符串 若num指定(第三个参数),则替换次数不超过num次
a="abcdefgcccc"
b=a.replace("c","H",3)
print(b)
replace_demo()
输出结果
abHdefgHHcc
四、分割
1、split
def split_demo(): #以指定字符分割字符串,默认为空格
a="abc dcefg hijkclmn"
print(a.split())
print(a.split("c",1)) #第二个参数为分割次数,默认为-1(分割所有)
split_demo()
输出结果
['abc', 'dcefg', 'hijkclmn']
['ab', ' dcefg hijkclmn']
2、rsplit
def rsplit_demo(): #分割字符串
a = "abcdecfg"
print(a.rsplit("c",1)) #第二个参数分割次数,默认-1(分割所有)
rsplit_demo()
#输出结果
['abcde', 'fg']
3、splitlines
def splitlines_demo(): #将每行元素分割形成一个列表,参数默认False,为True保留转义符
a = " as d\nk kj\rks \r\n jsdkj"
print(a.splitlines())
print(a.splitlines(True))
splitlines_demo()
输出结果
[' as d', 'k kj', 'ks ', ' jsdkj']
[' as d\n', 'k kj\r', 'ks \r\n', ' jsdkj']
4、partition
def partition_demo(): #根据指定参数将字符分割为三部分,若指定字符串不存在则返回的第一个参数为原字符串,其他为空
a = "abcdef"
b=a.partition("c")
c=a.partition("h")
print(b,c)
partition_demo()
输出结果
('ab', 'c', 'def') ('abcdef', '', '')
5、rpartition
def rpartition_demo(): #根据指定参数从右边搜索分隔符,将字符分割为三部分,若指定字符串不存在则返回的第一个参数为原字符串,其他为空
a = "abcdefg"
print(a.rpartition("d"))
rpartition_demo()
输出结果
('abc', 'd', 'efg')
五、编码解码
def encode_decode_demo():
a="abcdeabca"
b=a.encode(encoding="utf-8") #编码
print(b)
c=b.decode(encoding="utf-8") #解码
print(c)
encode_decode_demo()
输出结果
b'abcdeabca'
abcdeabca
五、判断类型的
1、isalnum
def isalnum_demo():#如果 string 至少有一个字符并且所有字符都是字母或数字或中文则返回 True,否则返回 False
a = "<,"
b="我"
c="lsdj1234"
print(a.isalnum())
print(b.isalnum())
print(c.isalnum())
isalnum_demo()
输出结果
False
True
True
2、isalpha
def isalpha_demo():#如果 string 至少有一个字符并且所有字符都是字母则返回 True,否则返回 False
a = "123jasoijo"
b = "jasoijo"
print(a.isalpha())
print(b.isalpha())
isalpha_demo()
输出结果
False
True
3、isdecimal
def isdecimal_demo(): #只包含十进制数字,若是返回True,否则返回False
a="010101"
print(a.isdecimal())
isdecimal_demo()
输出结果
True
4、isdigit
def isdigit_demo():#判断是否全是数字,若是返回True,否则返回False
a="2324t"
print(a.isdigit())
isdigit_demo()
输出结果
False
5、isidentifier
def isidentifier_demo(): #判断变量名是否合法(不包含内置变量)
a="def"
print(a.isidentifier())
isidentifier_demo()
输出结果
True
6、islower
def islower_demo(): #判断字母是否全是小写
a="ejwoee"
print(a.islower())
islower_demo()
输出结果
True
7、isnumeric
def isnumeric_demo():#判断是否全是数字,若是返回True,否则返回False
a="23"
print(a.isnumeric())
isnumeric_demo()
输出结果
True
8、isprintable
def isprintable_demo(): #若字符串都是可打印的或为空返回True 否则返回False
a="jweoif\nwfr" #含有转义符
b="skj"
print(a.isprintable())
print(b.isprintable())
isprintable_demo()
输出结果
False
True
9、isspace
def isspace_demo(): #判断字符串是否全是空格
a="dso lj"
b=" "
print(a.isspace())
print(b.isspace())
isspace_demo()
输出结果
False
True
10 、istitle
def istitle_demo(): #判断字符串是否是标题化的
a="Demo"
b="demo"
print(a.istitle())
print(b.istitle())
istitle_demo()
输出结果
True
False
11、isupper
def isupper_demo(): #字符串包含至少一个区分大小写的字符,且这些字符全部大写返回True 否则返回False
a = "32134"
b = "923uLheiu"
c = "KKHK"
print(a.isupper())
print(b.isupper())
print(c.isupper())
isupper_demo()
输出结果
False
False
True
12、startswith
def startswith_demo(): #检查指定范围内的字符是否是以指定的字符开头
a = "abcdefg"
print(a.startswith("c",2,6)) #参数分别为待查找字符,开始位置,结束位置
startswith_demo()
输出结果
True
六、格式化输出
def format_demo(): #格式化输出字符串
name = "小邓"
msg="吃饭了么?"
print("Hello,%s,%s"%(name,msg))
print(name,msg.format())
format_demo()
输出结果
Hello,小邓,吃饭了么?
小邓 吃饭了么?
def format_map_demo(): #格式化输出字符串
name="小邓"
print(name.format_map(name))
format_map_demo()
输出结果
小邓
七、截取、合并、填充
1、join
def join_demo(): #合并字符串
a="$$"
seq=["a","","b","c",""]
print(a.join(seq)) #以a为分隔符合并seq中的元素
join_demo()
输出结果
a$$$$b$$c$$
2、lstrip
def lstrip_demo(): #截取掉首字符左边的空格
a = " a bcd abbb"
b=a.lstrip()
print(b,"a:",len(a),"b:",len(b))
lstrip_demo()
输出结果
a bcd abbb a: 18 b: 16
3、strip
def strip_demo(): #删除首尾的字符或字符序列(默认为空格或回车)
a = " oidsjjaso "
b = " jdsoilossssss"
print(a.strip())
print(b.strip("s"))
strip_demo()
输出结果
oidsjjaso
jdsoilo
4、rstrip
def rstrip_demo(): #删除字符串末尾指定字符,默认空格
a = " ab cdefg "
b = " abcd efg"
print(a.rstrip())
print(b.rstrip("g"))
rstrip_demo()
输出结果
ab cdefg
abcd ef
5、ljust
def ljust_demo(): #返回一个原字符串,左对齐,右边用空格填充至指定长度
a = "abc"
b= a.ljust(10)
print(b,len(b))
ljust_demo()
输出结果
abc 10
6、rjust
def rjust_demo(): #返回一个原字符串,右对齐,左边用空格填充至指定长度
a = "abcdefg"
print(a.rjust(10))
rjust_demo()
输出结果
abcdefg
7、zfill
def zfill_demo(): #字符串右对齐,左边用0填充至指定长度
a = "ldja"
print(a.zfill(10))
zfill_demo()
输出结果
000000ldja
八、映射表
1、maketrans
def maketrans_demo(): #创建字符映射转换表,第一个参数是待转换字符,第二个参数是目标字符 返回的是ASCII码
a = "abcdefg"
b = a.maketrans("h","H")
print(a)
print(b)
maketrans_demo()
输出结果
abcdefg
{104: 72}
def maketrans_demo(): #创建字符映射转换表,第一个参数是待转换字符,第二个参数是目标字符 返回的是ASCII码
a = "abcdefg" #暂时看不懂
b = "1234567"
table = a.maketrans(a,b)
print(table)
maketrans_demo()
输出结果
{97: 49, 98: 50, 99: 51, 100: 52, 101: 53, 102: 54, 103: 55}
2、translate
def translate_demo(): #根据给出的表转换字符
a = "abcdefg"
b = "1234567"
table = a.maketrans(a,b)
print(table)
str = "abcdefghhhhijklmn"
print(str.translate(table))
translate_demo()
输出结果
{97: 49, 98: 50, 99: 51, 100: 52, 101: 53, 102: 54, 103: 55}
1234567hhhhijklmn
九、其他方法
1、center
def center_demo(): #返回字符串居中且两边用空格填充至指定的字符串长度
a="jdsOYTHjlkA"
print(a.center(50))
center_demo()
输出结果
jdsOYTHjlkA