1.2 python2.7
和
python3.6
常用区别
***
python2.7
版本只支持到
2020
年
1
月
1
日
,
建议新学习者安装
python3
版本。
1.2.1
终端输入区别
Python2.7
:
(1)
input
()
可以自动判断其类型,即输入什么类型的数据,就是什么类型,
没有引号的英文字符会被判断为变量,会在全文中找对应的变量
。
如果
str
类型必须加单引号或者双引号,不然类型不对,报错;
(2)raw_input()
输入所有数据都按照
str
类型处理,如果是整形输入,使用时要
str
转
int
,用
(int)
强制转换;
Python3.6
:
(1)
input
()
输入所有数据都按照
str
类型处理,如果是整形输入,使用时要
str
转
int
,用
(int)
强制转换;
(2)raw_input()
不再使用;
1.2.2 print
区别
Python2.7
:
print
为
class
,后面直接跟打印数值;
Python3.6
:
print()
为函数,打印数值必须用括号括起来;
1.2.3
编码区别
Python2.7
:默认
ASCII
处理字符
(
字符串以
8-bit
存储
)
,因此使用汉字前加
# -*- coding:utf-8 -*-
;
Python3.6
:全部用的是
Unicode(
万国码、统一码固定
2
字节
,
字符串以
16-bit
存储
)
字符集,
utf-8(
可动态变化
1-6
字节,
en:1byte zh:3bytes)
是对
Unicode
的压缩和优化
,
因此支持中文;
1.2.4
真除、整除区别
Python2.7
:
带上小数点
/
表示真除,
%
表示取余,
//
表示地板除(结果取整)
;
Python3.6
:
表示真除,
%
表示取余,
//
表示地板除(结果取整)
;
1.2.5 range
、
xrange
区别
Python2.7
:
range()
生成一个列表,
xrange()
生成一个生成器
;
Python3.6
:
list( range(0,4) )
列表,
range()
生成一个生成器,
xrange()
不再使用;
1.2.6
打开文件区别
Python2.7
:
file()
、
open()
都可打开文件
;
Python3.6
:
file()
不再使用,只用
open()
打开文件;