python2与python3区别,转python3代码
作者:互联网
目录
一、windows中python2 和 python3 共存
最近看到提醒说Python2将要停更了。因此下载了Python3.7。
windows中两者共存的方式我觉得最简单粗暴的,还是在安装目录里的 python.exe 文件,将Python2.7 的更改为python2.exe,python3.7的更改为python3.exe。
二、python2和python3的代码更改点
1. python2和python3的print 函数不一样
-
python3不支持 python2的
print 'helloKitty',y,z
这样的句式,需要增加括号。
改为
print('helloKitty',x,y)
双引号也可以。
-
python3还增加了些功能
python3的语法是:
print(value1, ..., sep=' ', end='\n', file=sys.stdout, flush=False)
- print可以支持多个参数,支持同时打印多个字符串(其中…表示任意多个字符串);
- sep表示多个字符串之间使用什么字符连接;
- end表示字符串结尾添加什么字符,指点该参数就可以轻松设置打印不换行,Python2.x下的print语句在输出字符串之后会默认换行,如果不希望换行,只要在语句最后加一个“,”即可。但是在Python 3.x下,print()变成内置函数,加“,”的老方法就行不通了。
>>> print('hello','Kitty',sep='-') hello-Kitty >>> print('hello','Kitty',sep='+',end='') # end可以实现打印出来的结束字符不换行。 hello+Kitty
2. python3的dict没有 .has_key.
if adict.has_key(key1):
改为
if key1 in adict:
3. 读取文件中文字符坑
文件读取python2中我用的是:
# _*_ coding:utf-8 _*_
读文件是
with open(fileName,'r’) as f:
改为
在python3中无效,更改成以下的:
with open(fileName,'r',encoding = 'utf-8') as f:
但是 encoding 在python2中不支持。
待不断改坑补充中。。。。。。。。。。
标签:end,sep,代码,Kitty,print,python3,python2 来源: https://blog.csdn.net/wuyoy520/article/details/91578204