编程中使用频率非常高的数据类型 “str 字符串” ,字符串属于不可变序列。
Python中声明字符串 使用 ‘单引号’ 或者 “双引号” 都是可以的 。
字符串的引号前后匹配的
下面是实现多行字符串: 三个引号 """这里放放着多行文本"""
直接输出看到的 \n 代表着换行符, 这种斜杠后跟着某个字符串的字符称之为转义字符 【转义字符个人理解:表示那些在电脑上不可显示的特殊字符】
print() 打印出来的才是显示的文本,就可以看到换行的信息
转义符有时候会影响我们的字符串,比如说我们C盘下某个文件夹的时候
比如说我们C盘下的 test 文件夹, (\t 是一个转义符) 输出的时候会自动转义了。这个时候我们就需要忽略转义字符。我们在字符串前面加个 r 来忽略转义字符
以字节的方式声明字符串,前面加个b
但是以中文显示的时候是不可以的,就会抛出一个错误信息 “字节只能包含ASCII文本字符。”
但是我们可以使用 encode() 方法 。 decode() 方法则重新变成原字符串
字符串的常用操作。上面既然说了是不可变序列,那么他也支持一些序列的常用操作
(1)判断字符是否在变量里面
(2)联接字符串
(3)重复字符串
(4)通过下标获取字符
(5) len(str) 获取字符串长度
(6) max(str) 获取最大的字符
(7) min(str) 获取最小的字符 【注:max跟min 匹配的大小是根据 ASCII表的前后进行比较的 】
(8)index() 检索字符串第一次出现的位置
(9) count() 统计某字符出现的次数
字符串的常用操作
(1)str 转化操作
当我们一个 str类型 的数据拼接上一个 int类型 会产生一个错误 “不能将int对象隐式转换” 这个是后我们就需要用到转化函数 str()
(2) replace() 字符串替换
字符串本身原位是不可改变,假定我们需要将a修改成A,使用如下写法将会产生以下错误。
‘abcdefg’ a 字符比较少。我们可以变通一下来实现,将第一个字符串排除在外,使用在拼接在前面拼接个A
如果一个字符串内 相同字符 出现的比较多,替换内容比较多, 那么上面的方式就不太灵活了 这个时候我们就使用replace() 函数了
替换后 原字符串 不会改变,replace 需要一个新的变量接收
replace( oldstr, newstr , [count] ) replace 第三个参数 count 可选, count参数主要是表示需要替换多少个字符
(3)capitalize() 将字符串的第一个字母变成大写
(4) upper() 将字符串转化为大写
(5) lower() 将字符串转化为小写
(6) startswith(str) 判断字符串是以什么开头的。返回 Bool值
(7) endswith(str) 判断是以什么结尾的。 返回 Bool 值
(8) isnumeric() 判断 字符串是否为数字
(9) isalpha() 判断 字符串是否为英文
(10) split( str ) 将一个字符串按照指定字符进行分割。 返回一个字符串数组
(11) join 联接字符串
(12) format 格式化字符串
当我们的输出一个很长的字符串的时候往往使用的是字符串联接,这样子很不方便,而且长度一长,也很难分辨从那里到那里。这个时候就可以使用format 函数了
这种用花括号包裹着中间一个数字的叫做占位符。 使用 format 的好处就是可以不用转化数字
扩展,另外一种写法。
占位符 的多种使用方式
(1) 这种位置之后数值的表示占用多少个字符长度。 字符是左对齐,数字是右对齐
(2) ‘ > ’ 大于号 右对齐。 ‘ < ’ 小于号 左对齐
(3) 表示以浮点数的形式显示
表示以保留两位小数点的形式显示
表示占用6位,并保留两位小数点的形式显示
f 表示 float类型。 .2 表示保留两位小数 。 .2前面的06表示以填充0的形式占用6个位置。
int 类型也是可以的
十六进制显示
八进制显示
二进制显示
转义字符大全