python2与python3区别

区别一

  • python解释器默认编码
    • python2 解释器默认编码:ascii
    • python3 解释器默认编码:utf-8

区别二

  • 输入
    • python2:name=raw_input(‘请输入姓名’)
    • python3:name=input(‘请输入你的姓名’)

区别三

  • 输出
    • python2:print “你好”
    • python3:print(“你好”)

区别四

  • 数字表示
    • python2:
      64位机器,范围-263~263-1
      超出上述范围,python自动转化为long(长整型)
      注:long(长整型)数字末尾有一个L
    • python3:
      所有整型都是int,没有long(长整型)

区别五

  • 整型除法
    • python2:只能保留整数位
    • python3:可以保留所有内容

区别六

  • range / xrange
    • python2:
      xrange:不会在内存中立即创建,而是在循环时,边循环边创建
      range:在内存立即把所有的值创建
    • python3:
      只有range,相当于python2中的xrange
      range:不会在内存中立即创建,而是在循环时,边循环边创建

区别七

  • 包的定义
    • python2:文件夹中必须有_ _ init _ _.py文件
    • python3:不需要有_ _ init _ _.py文件

区别八

  • 字典的keys / values / items方法
    • python2:返回列表,通过索引可以取值
    • python3:返回迭代器,只能通过循环取值,不能通过索引取值

区别九

  • map / filter
    • python2:返回列表,直接创建值,可以通过索引取值
    • python3:返回迭代器,不直接创建值,通过循环,边循环边创建

区别十

  • str(字符串类型)的区别
    • python2:
      str类型,相当于python3中的字节类型,utf-8/gbk等其他编码
      unicode类型,相当于python3中的字符串类型,unicode编码
      python2中没有字节类型
    • python3:
      str类型,字符串类型,unicode编码
      python3中没有unicode类型
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值