python笔记1 编码
2016-05-26 17:40
351 查看
1、csdn的编辑器真霸气,逼格满满,要好好学一下;
2、python3中已经把”raw_input“ 和”input“统一了,学learnpythonthehardway的时候敲了那么多raw_input 啊;
3、print后面得加()
4、learnpythonthehardwa敲到43章实在没勇气接着敲,好多基础还得补充一下再接着往下敲吧,另外那文字破游戏实在烦恶,大段大段英文游戏内容,和编程又没关系,弄那么多英文字干嘛,作者怎么想的?
5、如何在python下输入运算表达式,'输出运算结果。不能用eval()函数
6、在文本编辑器中,需要设置把Tab自动转换为4个空格,确保不混用Tab和空格。这条很重要。
7、变量本身类型不固定的语言称之为动态语言,与之对应的是静态语言。静态语言在定义变量时必须指定变量类型
8、python两种除法:“/”结果是浮点数,整除后也是浮点数;“//”地板除,只取整数部分;“%”是取余数运算
9、对于单个字符,python用函数ord()来获取字符的整数表示,用chr()来把编码转为对应字符
10、Python的字符串类型是str,在内存中以Unicode表示,一个字符对应若干个字节。如果要在网络上传输,或者保存到磁盘上,就需要把str变为以字节为单位的bytes。Python对bytes类型的数据用带b前缀的单引号或双引号表示:
要注意区分'ABC'和b'ABC',前者是str,后者虽然内容显示得和前者一样,但bytes的每个字符都只占用一个字节。以Unicode表示的str通过encode()方法可以编码为指定的bytes,例如:
纯英文的str可以用ASCII编码为bytes,内容是一样的,含有中文的str可以用UTF-8编码为bytes。含有中文的str无法用ASCII编码,因为中文编码的范围超过了ASCII编码的范围,Python会报错。在bytes中,无法显示为ASCII字符的字节,用\x##显示。反过来,如果我们从网络或磁盘上读取了字节流,那么读到的数据就是bytes。要把bytes变为str,就需要用decode()方法:
11、要计算str中包含多少字符,可以用len()函数,
如果换作byte,则计算字节数
2、python3中已经把”raw_input“ 和”input“统一了,学learnpythonthehardway的时候敲了那么多raw_input 啊;
3、print后面得加()
4、learnpythonthehardwa敲到43章实在没勇气接着敲,好多基础还得补充一下再接着往下敲吧,另外那文字破游戏实在烦恶,大段大段英文游戏内容,和编程又没关系,弄那么多英文字干嘛,作者怎么想的?
5、如何在python下输入运算表达式,'输出运算结果。不能用eval()函数
6、在文本编辑器中,需要设置把Tab自动转换为4个空格,确保不混用Tab和空格。这条很重要。
7、变量本身类型不固定的语言称之为动态语言,与之对应的是静态语言。静态语言在定义变量时必须指定变量类型
8、python两种除法:“/”结果是浮点数,整除后也是浮点数;“//”地板除,只取整数部分;“%”是取余数运算
9、对于单个字符,python用函数ord()来获取字符的整数表示,用chr()来把编码转为对应字符
10、Python的字符串类型是str,在内存中以Unicode表示,一个字符对应若干个字节。如果要在网络上传输,或者保存到磁盘上,就需要把str变为以字节为单位的bytes。Python对bytes类型的数据用带b前缀的单引号或双引号表示:
x = b'ABC'
要注意区分'ABC'和b'ABC',前者是str,后者虽然内容显示得和前者一样,但bytes的每个字符都只占用一个字节。以Unicode表示的str通过encode()方法可以编码为指定的bytes,例如:
>>> 'ABC'.encode('ascii') b'ABC' >>> '中文'.encode('utf-8') b'\xe4\xb8\xad\xe6\x96\x87' >>> '中文'.encode('ascii') Traceback (most recent call last): File "<stdin>", line 1, in <module> UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-1: ordinal not in range(128)
纯英文的str可以用ASCII编码为bytes,内容是一样的,含有中文的str可以用UTF-8编码为bytes。含有中文的str无法用ASCII编码,因为中文编码的范围超过了ASCII编码的范围,Python会报错。在bytes中,无法显示为ASCII字符的字节,用\x##显示。反过来,如果我们从网络或磁盘上读取了字节流,那么读到的数据就是bytes。要把bytes变为str,就需要用decode()方法:
>>> b'ABC'.decode('ascii') 'ABC' >>> b'\xe4\xb8\xad\xe6\x96\x87'.decode('utf-8') '中文'
11、要计算str中包含多少字符,可以用len()函数,
>>>len ('abc') 3 >>>len ('牛逼') 2
如果换作byte,则计算字节数
>>>len (b'abc') 3 >>>len (b'\xe4\xb8\xad\xe6\x96\x87') 6 >>>len ('牛逼'.encode('utf-8')) 6
相关文章推荐
- python编码错误:UnicodeDecodeError: 'utf8' codec can't decode
- 《统计学习方法》-支持向量机SVM学习笔记和python源码
- Python学习笔记之条件、循环和其他语句
- leetcode 145. Binary Tree Postorder Traversal-后续遍历|递归|非递归
- [Python note] Namespaces & scope
- Python 练习 21
- python 练习 17
- python 练习 20
- python 练习 19
- Python 还是用eclipse好
- 【Eclipse+PyDev+wxPython】wxPython的安装注意事项&&安装后Eclipse中仍然报错问题的解决
- [计网] 用python语言开发一个简单的web服务器和客户端
- python 练习 18
- python 练习 16
- python 练习 15
- python 练习 22
- python 练习 14
- python 练习 13
- Python 练习 12
- Python 练习 11