六、Python-字符串编码
最早的编码为ASCII码(包含0-9、A-Z、a-z、符号(空格、制表符等)),最多支持256个符号(每个符号占1字节) GBK/GB2312:我国制定的中文编码标准,一个字节表示因为字母,两个字节表示中文字符 UTF-8编码:国际通用编码,一个字节表示英文字符,三个字节表示中文 Python中常用字符串类型: str:使用Unicode字符(一个字符代表若干个字节) eg:“拼搏到感动自己” bytes:二进制数据,是带有b成对的字符串(用“”或‘’表示) eg:b'\xd2\xb0'和b'mr' str和bytes不能拼接在一起使用,str要存放在磁盘或者在网络上传输,需要把str转换层bytes 使用encode()方法转换层bytes 一、字符串编码转换:str.encode([endoding="utf-8"][,errors= "strict"])
扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄
- str:字符串名
- endoding="utf-8"(可选参数):指定编码时使用的编码
- 默认使用utf-8,当只有这一个参数时,可以省略的携程utf-8)
- 如果要设置问简体中文,可设置为GB2312
- errors= "strict"(可选参数):指定错误处理方式
- strict:遇到异常立即抛出错误(默认值)
- ignore:忽略非法字符
- replace:用?替换异常错误
- xmlcharrefreplace:使用xml字符的引用
- 拼接字符串:序列相加,把多个字符串相加,拼成一个字符串(字符串不允许直接与其他数据类型拼接)
- 计算字符串的长度:使用len(string) #不管多少个字,都按照一个字符串来计算
- 指一个字符串所占的字节数(英文字母、数字、下划线等占1字节,中文汉字占2-4个字节)
- 不通的编码方式,得出的结果可能会不一样
- 字符串的索引:从左到右依次增加(从0开始)
- 获取切片的位置不存在时,抛出一个空值,获取的指定索引值不存在时,或抛出错误代码(可以用try…except捕获错误,后续会讲到)
- 分割字符串:listname = str.split(sep,maxsplit) ---splist方法
- 合并字符串:strnew = string.join(iterable) ---join方法
- lower():将字符串中全部大写字母转换为小写字母(如无被转换字符,则返回原值,否则返回新值):str.lower()
- upper():将字符串的全部小写字母转换为大写字母(如无被转换字符,则返回原值,否则返回新值):str.upper()
- 使用%操作符(早期版本):定义模板:‘%[-][+][0][m][.n]格式化符号'%exp
- -:可选参数,用于指定左对齐,正数前方无符号,负数前面加负号
- +:可选参数,用于指定右对齐,正数前方无符号,负数前面加负号
- 0:可选参数,表示右对齐,正数前方元符号,负数前面加负号,用0填充空白处(一般与m参数一起使用)
- m:可选参数,表示占有宽度
- .n:可选参数,表示小数点后保留的位数
- exp:要转换的项(如果要指定的项有多个,需要以元组的形式指定)
- 格式化符号:主要有s、d、c、e、g、b、o、x、f、 %
- 使用format()方法(新版本,常用):str.format(args)
- index:可选,指定要设置哥还是的对象在参数列表中的索引位置(从0开始,不指定则根据值得先后顺序自动分配)
- fill:可选,用于指定空白处填充的字符
- align:可选,用于指定对其方式(<表示内容左对齐;>表示内容右对齐;=表示内容右对齐,并将符号放在填充内容的最左侧,且只对数字类型有效;值为^表示内容居中,需要配合width使用)
- sign:可选,用于指定有无符号数(+表示正数加正号,负数加负号;-表示正数不变,负数加负号;值为空格表示正数加空格,负数加负号)
- #:可选参数,对于耳机子、八进制、十六进制,如果加上#号,表示会显示0b/0o/0x前缀,否则不显示
- width:可选,指定所占宽度
- .precision:可选,用于指定保留的小数位数
- type:可选参数,指定要格式化的数据类型

更多精彩