下载的是PATHON 3.56.版本,看的书确是2版本。
安装完成,照例输入print "hello wrold" 出现语法错误SyntaxError: Missing parentheses in call to ‘print‘,本以为用的是半角原因,切回全英文还是一样的错误。
自认为聪明的认为是编码问题,加入# -*- coding: utf-8 -*-首行,语法错误还是存在。
查阅相关文章发现,在P3版本中,print函数已经放弃。在Python2.6中,已经支持了新的print()语法,但Python2中的print语句仍然可以使用。所以在Pathon3 版本应该加上括号。
通过查阅资料,现把P2和P3版本的不同点,放在这里,以便查问。
1. print函数:Python2中的print语句在Python3中被废弃,只能使用print函数。在Python2.6中,已经支持了新的print()语法,但Python2中的print语句仍然可以使用。
2. Unicode:Python2中是ASCII编码,需要更改字符集才能正常支持中文。而Python3中字符串是Unicode (utf-8)编码,支持中文做标识符。
3. 除法运算:在Python2中,/除法对整数的结果是一个整数,把小数部分完全忽略掉,浮点数除法会保留小数点的部分。而在Python3中,/除法的结果有小数部分。
4. 数据类型:Python2中有长整型long的概念,而Python3中没有。Python3中的list的sort()方法,不可以将数字和字符串混用排序,会报TypeError类型错误。
5. 编码:Python2的编码可以将字节和字符一起处理,使其可以一起混用。而Python3的编码将字节和字符分开处理,使其不得混用。
6. 字节类型:在Python2中,看到的字符串是bytes类型。而在Python3中,看到的字符串是unicode类型。