1.什么叫做字符串?
使用单引号或者双引号括起来的任意字符串,称之为字符串
字符串的创建:
star1 = “hello”
star2 = ‘world’
2.字符串的拼接
1.使用+来进行拼接,变成一个字符串
注意:不同类型不能使用加号拼接
2.使用 , 来进行拼接
注意:使用逗号会产生空格
3.使用%来进行拼接(格式化)
print("%d%s"%(star1,star2)
%s 字符串
%d int类型
%f float类型
%0nd 0:发表站位符 n:代表长度 d:代表类型
%.nf .n:代表保留n位小数
%nd 输出长度为n的整形,右对齐
%-nd 。。。左对齐
print(end="")
\t默认代表四个空格,本身自带有对齐的功能。
若不想换行则需要给end重新赋值【end是指打印结束的时候打印的字符串】
4.使用"{}str3{}".format(str1,str2)来进行拼接,在str1和str2中插入str3,无空格(可在str3前后增加空格)
5.使用join函数进行拼接,使用字符分隔序列
" 字符 ".join(序列)
注意:序列中的元素必须是字符串
3.字符串的重复输出
str1*n 将str1重复n次输出,返回一个新的列表
4.获取字符串长度
得到一个int类型
len(str1)
5.访问字符串中的字符
使用索引【下标】的方式实现
str1[index]
index索引值/下标值 取值范围[0,len(str1))
索引值/下标值 从0开始数
索引值还可以为负,可以从-1开始,-1代表倒数第一个字符
6.判断是否包含指定的字符
字符 in 字符串
若字符串中包含指定的字符则返回True,否则返回False
字符串常用函数
1.eval(str1)
功能:将str1转为一个有效的表达式并且返回计算的结果
2.str(x)
功能:可以将x【number,bool,list,tuple,set,dict】转为字符串
list1 = [123,"kkkk",88]
str4 = str(list1)
print(str4)
print(str4[0])
[123, 'kkkk', 88]
[
可以看出把列表转为了一个为"[123, 'kkkk', 88]"的字符串
3.str1.lower()
功能:将字符串中大写字母转为小写字母,并且返回一个新的字符串
4.str1.upper()
功能:将字符串中的小写字母转为大写字母,并且返回一个新的字符串
5.str1.swapcase()
功能:将字符串中的大写字母转为小写字母,将小写字母转为大写字母
并且返回一个新的字符串
6.str1.capitalize()
功能:返回一个首字母大写其他字母都小写的字符串。
7.str1.title()
功能:返回一个标题化的字符,每个单词的首字母都大写,其他字母小写。
8.str1.center(width,fillchar)
功能:返回一个以width为宽度,str1居中的,使用fillchar填充的字符串。
fillchar不写时默认为空格
9.str1.ljust(width,fillchar)
功能:返回一个以width为宽度,str1居左的,使用fillchar填充的字符串。
fillchar不写时默认为空格
同理:str1.rjust(width,fillchar)
10.str1.zfill(width)
功能:返回一个以width为宽度,str1居右的,使用0填充的字符串。
11.str1.count(sub,start,end)
功能:统计sub在str1中出现的次数,若不指定start与end则默认统计整个字符串
若指定start与end,则统计的范围[start,end)
12.str1.find(sub,start,end)
同理 str1.rfind(sub,start,end)
功能:从左往右在str1中查找sub是否存在,若存在则返回第一匹配到的下标值,若不存在则返回-1
注意:若指定start与end,则在[start,end)范围内查询,若不指定则查询整个字符串。
13.str1.index(sub,start,end)
同理 str1.rindex(sub,start,end)
功能:从左往右在str1中查找sub是否存在,若存在则返回第一匹配到的下标值,若不存在则报错
注意:若指定start与end,则在[start,end)范围内查询,若不指定则查询整个字符串。
14.str.strip(chars)
功能:去除str1左边的指定chars,若chars不给,默认去除空白符[\r\n\f\t ]
规律如下代码块(无序的)
str1 = " helolllel2ew4h h"
print(str1.strip(" e4h"))
# lolllel2ew
同理 str1.lstrip(chars)
str1.rstrip(chars)
15.str1.split(seq,maxsplit)
功能:从左往右使用指定的seq对str1进行切割处理,若不指定seq则默认使用空白符来进行切分,
若不指定maxsplit默认全部切分。切分的结果以列表的形式返回。
str1 = " helolllel2ew4h h"
print(str1.split("e",maxsplit=2))
# [' h', 'lolll', 'l2ew4h h']
同理 str1.rsplit(seq,maxsplit)
16.str1.splitlines(keepends=False)
功能:str1按行切片,并且将切片的结果作为一个列表返回。keepend默认为False,显示, (加个空格)
当keepend为True的时候,显示切片的字符【\n】
str2 = '''jdbc.url = jdbc:oracle:thin:@localhost:1521:XE
jdbc.driver= oracle.jdbc.driver.OracleDriver
jdbc.user = bos
jdbc.password = bos'''
print(str2.splitlines())
print(str2.splitlines(keepends=True))
['jdbc.url = jdbc:oracle:thin:@localhost:1521:XE', 'jdbc.driver= oracle.jdbc.driver.OracleDriver', 'jdbc.user = bos', 'jdbc.password = bos']
['jdbc.url = jdbc:oracle:thin:@localhost:1521:XE\n', 'jdbc.driver= oracle.jdbc.driver.OracleDriver\n', 'jdbc.user = bos\n', 'jdbc.password = bos']
17.str1.join(序列)
功能:将序列中的字符串以指定的str1进行拼接,并将拼接好的字符串返回。
list1 = ["you","are","a","good","man"]
str3 = " ".join(list1)
print(str3)
you are a good man
18.min(str1),max(str1)
min(str1)
功能:返回str1中的最小字符【比较的是ASCII码值】
max(str1)
功能:返回str1中的最大字符
19.str1.replace(old,new,count)
参数一:被替换的字符串
参数二:新的字符串
参数三:替换的次数,若不指定默认全部替换
功能:使用new将str1中old字符串进行替换,若指定count则替换前count个,
若不指定count,则全部替换。
20.str1.startswith(“xx”,start,end)
判断字符串是否以xx开头
str1.startswith(“xx”[,start][,end])
若是以xx开头则返回True,否则返回False,若指定范围,则取值范围为[start,end),
若不指定范围,则默认整个字符串
str3 = "you are a nice man nice 你是一个好人"
print(str3.startswith("o",1,5))
True
同理:str1.endswith(“xx”,start,end)
str3 = "you are a nice man nice nice 你是一个好人"
print(str3.endswith("a",1,5))
True
21.str1.encode()
将普通字符串转为二进制
str1.decode()
将二进制字符串转为普通字符串
注意:编码的格式与解码的格式必须保持一致
判断字符串中数字类型函数
str1.isdigit():只能识别阿拉伯数字
str1.isdecimal():只能识别阿拉伯数字
str1.isnumeric():除了阿拉伯数字还可以识别中文的一二三
str1.isalpha()
功能:判断str1是否为纯字母,若是则返回True,否则返回False。
注意:此功能没有考虑中文,中文默认也是字母
str1.isalnum()
功能:判断str1是否由数字与字母组成,若是则返回True,否则返回False。
注意:此功能没有考虑中文,中文默认也是字母
str1.isupper()
功能:判断str1中出现的字母是否全部为大写,若是则返回True,否则返回False
str1.islower()
功能:判断str1中出现的字母是否全部为小写,若是则返回True,否则返回False
str1.istitle()
功能:判断str1是否为标题化的字符串,若是则返回True,否则返回False
str1.isspace()
功能:判断str1中是否只包含空白符,若是则返回True,否则返回False。