Python字符串的常用方法(3-3)
目录
四.Python3.6加入的新格式化方案一f-strings
一.字符串编码格式
1.什么是编码格式?
- 有一定规则的规则
- 使用了这种规则,我们就能知道传输的信息是什么意思
2.常见编码格式
- gbk中文编码
- ascII英文编码
3.通用的编码格式
- uf-8是一种国际通用的编码格式
演示:
结果:
从上面的例子中可以看出,不同的编码不一定适用于不同的国家字符,很可能会出现字符不兼容的问题,会导致一些字符无法正常显示。
拓展:
ascii 码 不支持中文,支持英文 ,数字 ,字母, 符号
gbk 国标支持中文 ,支持英文,数字,字母,符号,英文用16位, 中文用16位
utf-8则包含全世界所有国家需要用到的字符。所以日常我们敲代码建议使用utf-8编码,防止出现字符不兼容的问题。
二.字符串的格式化
1.什么是格式化?
- 定义:一个固定的字符串中有部分元
素是根据变量的值而改变的字符串
(通俗的来说,格式化字符串是指将
一个或多个值插入到一个字符串中,
以生成一个新的字符串,或者用来将
数据格式化为特定的文本格式以进行
显示或存储)
2.格式化使用场景与目的
- 发送邮件的时候
- 发送短信的时候
- App上发推送的时候
- 对于重复性很多的信息,通过格式化
的形式,可以减少代码的书写量
3.根据类型定义的格式化
- 字符串格式化使用操作符%(也称为
格式符)来实现 - 'my name is %s,my age is %s'%,
(sll',18)-引号的部分为格式化
字符串 - 括号的部分-格式化字符串对应
符的变量,变量与格式符按顺序
一一对应,数量保持一致,超过
1个格式化变量用小括号包裹 - 格式化字符串与格式符变量之间
用一个%连接,%两边有1个空
格
演示:
结果:
三.字符串格式化函数-format
1.format函数介绍
- string.format函数用来格式化字符串
- format函数不支持格式U(在 Python 中,格式字符 'u' 是 Python 2 中用于表示 Unicode 字符串的一种格式字符。然而,从 Python 3 开始,所有的字符串都是 Unicode 字符串,因此 'u' 格式字符已经不再需要了,也不再支持。)
- 使用format的字符串主体使用大括号{}来替代格式符
- 用法:string.format(data,data,data...)
format的注意事项:
- 在Python中,%s是一种通用的占位符,可以用来格式化任何类型的变量为字符串类型,而{:s}是一种格式化字符串的方式,需要接收一个字符串类型的变量作为参数。在print('%s' % 12)中,%s占位符会自动将整数类型的变量转换为字符串类型,因此可以正常输出。
以正常输出。而在print('{:s}'.format(12))中,{:s}需要接收一个字符串类型的变量作为参数,但是传入的是一个整数类型的变量,因此会抛出TypeError类型的错误。如果要使用{:s}格式化输出整数类型的变量,需要先将其转换为字符串类型
2.创建模板
演示:
结果:
四.Python3.6加入的新格式化方案一f-strings
1.用法
- 定义一个变量
- 字符串前加f符号
- 需要格式化的位置使用{变量名}
- 在字符串的前面加个f才会让Python认为字符串主体内的大括号中的是一个变量(f代表format格式化)
演示:
结果:
五.格式化符号
1.什么是格式化符号?
- 用于对应各种数据类型的格式化符号
2.格式化符号有哪些?
常见的格式化符号
格式符号 转换
%s 通过str()字符串转换来格式化
%u 无符号的十进制整数
%d 有符号的十进制整数
%o 八进制整数
%x 十六进制整数,小写字母
%X 十六进制整数,大写字母
%e 浮点数字(科学计数法)
%E 浮点数字(科学计数法,用E代替e)
%f 浮点实数
%g 浮点数字(根据值的大小采用%e或%f)
%G 浮点数字(类似于%g)
3.格式化符号的拓展:
- %c最大支持6位数证书,并且只支持单个字符
- 其他类型,%f只能输出6位小数的浮点数
- 使用int'123ab',16)可以获取16进制的数,如果省略这个参数,int()函数将默认使用十进制。如果字符串包含非法字符,例如字母g,则int()函数将引发一个ValueError异常。
- 在Python中,%s是一种通用的占位符,可以用来格式化字符串中的任何数据类型。它可以格式化字符串、数字、布尔值、列表、元组、字典等数据类型。在输出时,%s会自动根据变量的类型进行转换,因此可以方便地输出各种类型的数据。需要注意的是,在格式化字符串时,如果使用了%s占位符,那么变量的值会自动转换为字符串类型,如果希望保持原始的数据类型,可以使用其他类型的占位符,如%d、%f等。总之,%s是一种通用的占位符,支持所有的数据类型,可以方便地将不同类型的数据格式化为字符串。
六.format的使用方法
1.使用方法:format0是格式化字符串的函数,可以接受不限个参数,位置可以不按顺序。
2.使用位置参数:
- 使用位置参数format:会把参数按位置顺序来填充到字符串中,第一个参数是0,然后1...也可以不输入数字,这样也会按顺序来填充
- 演示:
3.使用关键字参数:
- 利用key=value来实现一一对应的赋值替换
- 演示:
- 数字格式化:保留两位小数
4.补充说明:
- 输出花括号需要用花括号本身来转义
- 演示:
- 结果:
-
七.字符串的特殊字符
1.什么是转义字符?
- 字符要转成其他含义的功能,所以我们叫它转义字符
- 用法:\ + 字符
2.Python中的转义字符
- \n换行,一般用于未尾,strip对其也有效
- \t横向制表符(可以认为是一个间隔符),\t如果前面没有空格,则只会有一个空格
- \v 纵向制表符(会有一个男性符号)# 在terminal中执行才有效果
- \a 响铃 # 在terminal中才会响铃
- \b 退格符,将光标前移,覆盖(删除前一个)
- \r回车 # 会将前面的字符全部抹去然后换行,info_r = 'my name is dewei\r';print(1, info_r,info_b) # 在\r前面的字符信息都会被抹去,包括整数1
- \f 翻页(几乎用不到,会出现一个女性符号) # 在不同的解释器中不同
- \‘转义字符串中的单引号
- \" 转义字符串中的双引号
- \\ 转义斜杠
3.转义无效符
- 在python中在字符串前加r来将当前字符串的转义字符无效化注意!r
- 对字符串格式符不起作用比如%s
演示:
结果:
4.转义字符拓展
- #很多的转义字符它可能在我们的Python脚本里不能很好的体现出效果,
只能在我们的一些调试模式下才能展现出来 - #在不同的解释器下,像某些特殊的符
号,它的效果是不太一样的
5.字符串的拓展知识
- strip('xx')去掉某个字符串
- isdigit()-是否全是数字并至少有一个字符,返回布尔类型
- isalnum()-是否全是字母和数字,并至少有一个字符,返回布尔类型
- isalpha)-是否全是字母并至少有一个字符,返回布尔类型
- center(n,'_')-把字符串放中间,两边用'_'(也可以替换为其他字符)补齐,最终长度为n
- 点赞
- 收藏
- 关注作者
评论(0)