str模块
str字符串
- 表示文字信息
- 用单引号,双引号,三引号括起来
转义字符
-
用一个特色的方法表示出一系列不方便写出的内容,比如回车键,换行符,退格符
-
借助反斜杠字符,一旦字符串中出现反斜杠,则反斜杠后面一个或者几个字符已经不是原来的意思了,进行了转义
-
在字符串中,一旦出现反斜杠就要加倍小心,可能有转义字符出现
-
不同系统对换行操作有不同的表示
-
windows : \n
-
Linux : \r\n
-
-
常用的转移字符
-
- \ 在行尾时是 续行符
- \ 反斜杠符号
- ’ 单引号
- " 双引号
- \a 响铃
- \b 退格
- \e 转义
- \000 空
- \n 换行
- \v 纵向制表符
- \t 横向制表符
- \r 回车
- \f 换页
- \oyy 八进制数,yy代表字符,如 \o12 代表换行
- \xyy 十六进制数 yy代表字符,如\x0a代表换行
- \other 其他字符一普通格式输出
#转义字符的案例 #想表达除Let's Go s = 'Let\'s Go' #使用转义字符 print(s) #使用单双引号嵌套 s = "Let's GO" print(s) #表示斜杠\ #比如 C:\User\Admin path = "C:\\User\\Admin" print(path) #表示回车换行 #表达效果 #I #Like #Python like = "I\nLike\nPython" print(like) #单个反斜杠的用法 #在Python中,单个反斜杠表示此行未结束,出于美观,需要下一行继续 #本来我的Demo函数应该写成: def myDemo(x,y,z):,出于举例我要运用单个转移字符 def myDemo(x,\ y,\ z): print("反斜杠Demo") myDemo(1,2,3)格式化
- 格式化
-
把字符串按照一定的格式进行打印或者填充
-
格式化的分类
- 传统格式化
- format
-
字符串的传统格式化方法
- 使用%进行格式化
- %(百分号)也叫占位符
# %s表示简单的字符串 #占位符可以单独使用 s = "I like %s" print(s) print(s%"打游戏") print(s%"编程")
I like %s[^控制台输出]
I like 打游戏[^控制台输出]
I like 编程[^控制台输出] -
format格式化
- 使用函数形式进行格式化,代替以前的%
- 不用指定位置,按顺序读取
#format格式化 #方式1 fs = "{},{}!" print(fs.format("Hello","World")) #方式2 fs2 = "{},{}".format("Hello","World") print(fs2) #设定指定位置 s = "{0},{1}!" print(s.format("Hello","World")) #设置指定位置2 s2 = "{0},{0}!" print(s2.format("Hello")) #设置指定位置3 s2 = "{1},{0}" print(s2.format("Hello","World")) #根据名称传入参数 student = "我叫{name},我今年{age},我家住在{add}" print(student.format(name="张三",age=15,add="地球")) >控制台输出 Hello,World! Hello,World Hello,World! Hello,Hello! World,Hello 我叫张三,我今年15,我家住在地球
- str内置函数
-
字符串查找类:find,index,islower
-
find:查找字符串中是否包含一个字串
#str内置函数 stre = "asdfjhasdf" s = "df" print(stre.find(s)) #返回第一次发现字符串的位置 s = "z" print(stre.find(s))#如果在字符串中查询不到返回-1 >控制台输出 2 -1
-
-
使用时还可以使用区间查找
``` s.find(str,int)
```python #在区间中进行查找 l = "12345678910111213" find = "10" print(l.find(find,9)) #从下标为9的位置开始查找 print(l.find(find,14)) #从下标14的位置开始查找,因为没有所以会返回-1 >控制台输出 9 #从0开始 10的下标是9 -1 ``` - index:跟find的区别是查找不到会发生错误 - rfind,lfind:从左开始查找,从右开始查找
-
内容判断类函数
-
startswith/endswith:是否以xxx开头或者结尾
-
检测某个字符串是否已某个子串开头,常用三个参数
-
suffix:被检查的字符串
-
start:检查范围的开始范围
-
end:检查范围的结束范围
#内容判断类函数案例 st = "zhang san ai li si" sufstart = "zhang san" sufend = "li si" print(st.startswith(sufstart)) print(st.endswith(sufend)) >控制台输出 True True
-
-
islower/isupper:判断字符串是否是大写还是小写
#判断字符串是大写还是小写 s1 = "aasdasfdasd fa" print(s1.islower()) #判断字符串是不是小写 s2 = "JHGJHGGJKHGKJHGKJH" print(s1.isupper())#判断字符串是不是小写 #两个函数功能一样 >控制台输出 True False
-
-
操作类函数
-
format:格式化用的
-
strip:这个函数主要作用是删除字符串__两边的空格__(不是中间),其实这个函数允许你去自定义删除字符串两边的哪个字符,如果不指定的话默认是空格.同样还有lstruip和rstrip,此处l和r分别表示左边和右边,即删除字符串左边或者右边制定字符,默认空格.需要注意的是此处的删除不是删除一个,是指从头开始符合条件的连续字符
#操作函数 strip()案例 c = "AA bbb cccc" print(c.strip("A")) >控制台输出 bbb ccc
-
join:这个函数主要对字符串进行拼接,他需要一个可以迭代的内容作为参数,功能是把可迭代的字符串拼接在一起,中间使用调用字符串作为分隔符
#join案例 #要求用户输入账号,密码,用户输入完成后用-将用户的输入结果进行拼接 log = input("请输入账号:") pas = input("请输入密码:") #将获得的数据放入列表中 l = [log,pas] #用-进行分割 j = "-" print(j.join(l)) >控制台输出 请输入账号:admin 请输入密码:123123 admin-123123
-