目录
print函数
print "Hello World" # 2.x版本中格式
print("Hello World") # 3.x版本中格式
''' 2.6版本已可以支持新的print()语法'''
from __future__ import print_function
print("fish", "panda", sep=', ')
Unicode编码
- python2.x 解释器默认编码格式:ASCII,因此默认字符串不支持中文
- python3.x 解释器默认编码格式:UTF-8
不等运算符
- python2.x 不等于,有两种写法:!= 和 <>
- python3.x 不等于,只有一种写法:!=,去掉了 <> 写法
数据类型
-
python2.x中数据类型分为:整型(int)和长整型(long)两种类型;
-
python3.x中去掉了长整型(long),把长整型(long)整合到整型(int)中,保留了一种;
-
python3.x中新增了bytes类型,对应于2.X版本的八位串,定义一个bytes字面量的方法;
>>> b = b'china' >>> type(b) <type 'bytes'>
-
str 对象和 bytes 对象可以使用 .encode() (str -> bytes) 或 .decode() (bytes -> str)方法相互转化;
>>> s = b.decode() >>> s 'china' >>> b1 = s.encode() >>> b1 b'china'
-
raw_input()和input( )
python2.x中raw_input()和input( ),两个函数都存在,其中区别为:
- raw_input()---将所有输入作为字符串看待,返回字符串类型
- input()-----只能接收"数字"的输入,在对待纯数字输入时具有自己的特性,它返回所输入的数字的类型(int, float )
在python3.x中raw_input()和input( )进行了整合,去除了raw_input(),仅保留了input()函数,其接收任意任性输入,将所有输入默认为字符串处理,并返回字符串类型。
map 和 filter
python2.x 中map和filter两者的类型是:内置函数(built-in function),返回值则是列表类型数据;
map(lambda x:x*2, [1,2,3]) >> [2,4,6]
filter(lambda x:x%2==0, range(10)) >>[0,2,4,6,8]
python3.x 中map和filter两者的类型是:类(class),返回结果也从当初的列表成了一个可迭代的对象;
map(lambda x:x*2, [1,2,3]) >> map object at 0x10d8bd400>
filter(lambda x:x%2==0, range(10)) >> filter object at 0x10d8bd3c8>