版本3区别与2的地方:
1、不换行输出版本3里:print('*', end=' ')
2、input 接收的是一个值或变量,也就是说,你如果输 123,程序接收到的就是整数 123,你输 True,就是 bool 值 True。如果你输了 abc,程序会认为这是一个叫做 abc 的变量,而假如你没有定义过这个变量,就会报错。
所以,当你想用 input 得到一段文字的话,必须把文字写在引号 "" 或 '' 中。
3、3里直接拿 input 得到的“数字”比较大小,会报错类型不同无法比较。那么在3里,如何像2一样得到用户输入的一个值呢?方法是 eval():
value = eval(input())
或者,如果你只是需要一个整数值,也可以:
value = int(input())
4、打开文件不再支持 file 方法,只能用 open
range不再返回列表,而是一个可迭代的range对象
除法 / 不再是整除,而是得到浮点数,整除需要用双斜杠 //
urllib和urllib2合并成了urllib,常用的urllib2.urlopen()变成了urllib.request.urlopen()
字符串及编码相关有大变动,简单来说就是原来的str变成了新的bytes,原来的unicode变成了新的str。
5、“>”“<”在编程语言中被称为比较(关系)运算符,常用的比较(关系)运算符包括:
>:大于
<:小于
>=:大于等于
<=:小于等于
==:等于。比较两个值是否相等。之所以用两个等号,是为了和变量赋值区分开来。
!=:不等与
not:逻辑“非”。如果x为True,则not x为False
and:逻辑“与”。如果x为True,且y为True,则x and y为True
or:逻辑“或”。如果x、y中至少有一个为True,则x or y为True
比较运算符和逻辑运算符的结果都是 bool 类型的值
6、 if 条件:
选择执行的语句
特别说明:条件后面的冒号不能少,同样必须是英文字符。
while 条件:
循环执行的语句
同if一样,注意冒号,注意缩进