字符串
字符串基本定义
- 字符串是由 一对单引号或者一对双引号或者一对三个单引号和三个双引号组成的
- 字符串是不可变类型
- 内存中 如果对原来的字符串进行操作,那么结果会存放在新的空间
转义字符
\t 制表符 \n 换行 \'显示单引号\" \\ 特殊字符转义
字符串前面加个r是原生字符串 里面的内容原样输出,里面的转义字符不转义
str2 = r'我给你说个坏消息?\n什么坏消息\n我对你的思想不单纯了'
str1 = '我给你说个坏消息?\n什么坏消息\n我对你的思想不单纯了'
字符串的下标和切片
- 下标就是索引 计算机索引是从0开始
- 可迭代对象 都可以遍历 str list tuple dict set range
字符串的切片
-
语法: 字符串[start : end: step]
- 可以包含start不包含end
- step 步长 每隔step-1取一次 步长为负数反着取
# print(word[0:4]) # 包括第零个不包括 不包括下标为四 # print(word[3:]) # 从起始3取到最后 # print(word[:4]) #从第0个取到下标为4 # print(word[::]) # 从头到尾
字符串的常用操作
-
len()求字符串的长度
-
查找内容的相关方法 返回需要查找的内容的下标
- .find(‘查找的内容’) 从左到右 找不到返回-1
- .rfind(‘查找的内容’) 从右到左
- .index(‘查找的内容’) 根据索引找 找不到就报错
- .rindex(‘查找的内容’) 从右往左 根据下标找
-
判断 用在if while 等需要判断的地方
- .startswith() 判断开头
- .endswith() 判断结尾
- .isalpha()判断是否是纯字母
- .isdigit()判断是否是纯数字
- .isalnum()是否是字母加数字
- .isspace()是否全是空格
字符串的分割
-
spilt(‘分割符’) 返回的是列表
按照指定的字符串进行分割(切割字符串)
split 从左往右切割
-
rsplit 从右往左split(‘切割符’,步长)
-
.splitlines 按照行进行分割
-
.partition 指定字符串作为分割符 返回元组
指定字符串作为分割符返回三个元素的元组
-
.rpartition 指定字符串作为分割符 从右往左分割字符串返回元组
指定字符串作为分割符返回三个元素的元组
字符串的拼接
str.join(字符串)
作用:可以把列表或者元组快速的转变成为字符串,并且以指定的字符分隔。
‘指定字符串’.join(str) 以指定字符串拼接
字符串的替换
str.replace(‘被替换的字符串’,‘指定字符串’)
字符编码
ASCII码
chr()将字符编码转化成字符串
ord()将字符串转化为字符编码
GBK编码 一个汉字两个字节
‘字符’.encode(‘utf-8’)将字符转化为utf-8编码
空格处理
-
ljust
str.ljust(指定长度) 返回指定长度的字符串,并在右侧使用空白字符补全(左对齐)。
-
rjuat
str.rjust(指定长度) 返回指定长度的字符串,并在左侧使用空白字符补全(右对齐)。
-
center
str.center(指定长度) 返回指定长度的字符串,并在两端使用空白字符补全(居中对齐)
-
lstrip 删除 mystr 左边的空白字符
-
rstrip 删除 mystr 右边的空白字符。
-
strip 删除两端的空白字符
字符串拼接
把参数进行遍历,取出参数里的每一项,然后再在后面加上mystr
S.join(iterable)
字符串之间可以使用加法运算符+
作用是将两个字符串拼接到一起
格式化输出字符串
# 占位符
# %s 字符串 %d 整型数字 %f 浮点型
# %nd整型数字 n位 不够在前面用空格补齐
# %.nf 保留小数点后n位
# %x 将数字使用16进制输出
# %% 原样输出%