python基础——字符串、编码、格式化

1.三种编码:ascii Unicode utf8

2.字符串和编码数字的两个函数:ord(字符转数字ord(‘A’)=65)和 chr(数字转字符chr(65)=A)

3.bytes存储编码,记住两个函数encode和decode

  由于Python的字符串类型是str,在内存中以Unicode表示,一个字符对应若干个字节。如果要在网络上传输,或者保存到磁盘上,就需要把str变为以字节为单位的bytes

  Python对bytes类型的数据用带b前缀的单引号或双引号表示。

      ‘ABC’.encode('utf-8')结果为b‘ABC’,>>> '中文'.encode('utf-8')  -> b'xe4xb8xadxe6x96x87',

  b'xe4xb8xadxe6x96x87'.decode('utf-8',erros='ignore')   如果bytes中只有一小部分无效的字节,可以传入errors='ignore'忽略错误的字节:

4.len()函数既可以统计字符数,也可以将字符串转换成bytes后统计字节数。

5.字符串格式化两种方式%和format(),如果要使用%z字符 请用%%

     %s %d %f %x      %.2f(浮点型保留两位小数)

  >>> 'Hello, {0}, 成绩提升了 {1:.1f}%'.format('小明', 17.125)   'Hello, 小明, 成绩提升了 17.1%'

6.源代码开通两句,让python解释器在读取源码的时候按utf-8的编码读取。

   #!/usr/bin/env python3

   # -*- coding:utf-8 -*-

  

  第一行注释是为了告诉Linux/OS X系统,这是一个Python可执行程序,Windows系统会忽略这个注释;

  第二行注释是为了告诉Python解释器,按照UTF-8编码读取源代码,否则,你在源代码中写的中文输出可能会有乱码。

  申明了UTF-8编码并不意味着你的.py文件就是UTF-8编码的,必须并且要确保文本编辑器正在使用UTF-8 without BOM编码

原文地址:https://www.cnblogs.com/wuchenggong/p/8735363.html