Python2和Python3的一些区别

系统 1473 0

Python2和Python3的一些区别_第1张图片

最近在改项目中的python代码,之前用python2写的,现在准备改成python3,遇到一些小情况,在此记录一下:

(1)除法的区别

在python2中,对于两个int变量进行 “ / ” 除法操作,得到的结果是整数,小数部分直接舍去。
而在python3中, 单斜线 “ / ” 表示的就是实际的除法,而对应于python2的整除模式要用双斜杠 “ // ” 来代替

            
              import sys
sys.version
Out[69]: '3.5.2 (default, Nov 23 2017, 16:37:01) \n[GCC 5.4.0 20160609]'
a = 5
b = 3
a/b
Out[72]: 1.6666666666666667
a//b
Out[73]: 1

            
          

(2)print的区别

打印输出函数print在py2和3中也不同,在py2中,print可以是一个语法结构,可以直接写成 print xxx,当然,也可以用函数的形式写成print(xxx)的形式。

而在py3中,print只保留了函数的功能,因此是一个内置函数了,因此只能用括号括起来才能使用。

print函数的原型为:

            
              print(value1, ..., sep=' ', end='\n', file=sys.stdout, flush=False)

            
          

其中,value1,value2等等表示要打印的值,sep是分隔符,默认是空格,也就是用空格分开,end表示结尾,如果想要不换行,就可以把 " \n " 换成其他,如空格等。

            
              print(a,b)
5 3

print(a,b,sep=',')
5,3

print(a,b,end=' '); print('end')
5 3 end

print(a,b); print('end')
5 3
end

            
          

(3)dict中查找键值的区别

在python2中,dict又一个成员函数 has_key() ,可以用来看有没有某个key值。在python3中,这个函数被 “__contains__” 代替,用来查看是否有某个键值。

            
              a = dict({'air':50, 'ball':1, 'cat':3})

a
Out[88]: {'air': 50, 'ball': 1, 'cat': 3}

a.__contains__('air')
Out[89]: True

a.__contains__('dog')
Out[90]: False

a.has_key('cat')
Traceback (most recent call last):

  File "
              
                ", line 1, in 
                
                  
    a.has_key('cat')

AttributeError: 'dict' object has no attribute 'has_key'

                
              
            
          

ps: 最近毕业事务繁忙,日常时间都用来写论文和做实验了,因此博客好久没更新。。。
本周已经答辩完啦~顺利从master candidate变成了一只master
所以以后将继续用这个blog记一些笔记和总结

近期的一些准备关注的方向:CA、NLP、小样本、医学图像处理。可能会整理一些相关的论文笔记。

伤情最是晚凉天,憔悴斯人不堪怜。 邀酒摧肠三杯醉,寻香惊梦五更寒。 钗头凤斜卿有泪,荼蘼花了我无缘。 小楼寂寞新雨月,也难如钩也难圆。 ——马 东


更多文章、技术交流、商务合作、联系博主

微信扫码或搜索:z360901061

微信扫一扫加我为好友

QQ号联系: 360901061

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描下面二维码支持博主2元、5元、10元、20元等您想捐的金额吧,狠狠点击下面给点支持吧,站长非常感激您!手机微信长按不能支付解决办法:请将微信支付二维码保存到相册,切换到微信,然后点击微信右上角扫一扫功能,选择支付二维码完成支付。

【本文对您有帮助就好】

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描上面二维码支持博主2元、5元、10元、自定义金额等您想捐的金额吧,站长会非常 感谢您的哦!!!

发表我的评论
最新评论 总共0条评论