编码和字符串

(1)编码
ASCII码,一共有127个字符,中国制定了GB2312编码,把中文编进去;
Unicode把所有语言统一到一套编码里,ASCII码是1个字节,而Unicode通常是2个字节;
UTF-8编码,把Unicode编码转化为“可变长编码”;
在计算机内存中,统一使用Unicode编码,当需要保存到硬盘或者需要传输的时候,就转换为UTF-8编码;
浏览网页的时候,服务器会把动态生成的Unicode内容转换为UTF-8再传输到浏览器;
为了避免乱码问题,应坚持始终使用UTF-8编码;在文件头部添加 # _*_ coding:utf-8 _*_
Python会忽略这句代码,但是它却可以作为“黑客”或者解决问题的方法来制定文件的格式。

(2)字符串
python的字符串类型:str,在内存中以Unicode表示,strVar='ABC',bStrVar=strVar.encode('utf-8')
在网络传输或保存磁盘的时候,把str变为以字节为单位的bytes,bytesVar=b'ABC',strBytesVar=bytesVar.decode('utf-8')
str的len()计算的是字符数,bytes的len()计算的是字节数;

格式化输出
'Hi,%s,you have $%d.' %('xyl',10000) # 'Hi,xyl,you have $10000.'
'Hi,{0},you have ${1}.'.format('xyl',10000) # 'Hi,xyl,you have $10000.'
"Hi,%s,i said %r." %('xyl','are you ok?') # "Hi,xyl,i said 'are you ok?' "
%r给字符串加了单引号;%r打印时能够重现它所代表的对象
d=datetime.date.today()
print("%r" %d) #datetime.date(2018, 1, 14)

输入:python2:raw_input()
python3:input()

python -m pydoc -b # 回去自动启动一个web server,同事启动浏览器展示帮助系统
-m:查看module在当前的可见的搜索路径上
-b:启动的是浏览器
python -m pydoc input # 查看input的说明
posted @ 2018-01-14 17:08  always on the way  阅读(154)  评论(0编辑  收藏  举报