zoukankan      html  css  js  c++  java
  • Py2与Py3的区别

    总结Py2 与Py3 的区别

    1 编码区别

    在Python2中有两种字符串类型str和Unicode。

    默认ASCII

    python2 str类型,相当于python3中的bytes类型

    python2 unicode类型,相当于python3中的str类型


    而在Python3中改为了bytes和str

    默认utf-8


    在 Python 中,不论是 Python2 还是 Python3 中,总体上说,字符都只有两大类:

    1. 通用的 Unicode 字符;
    2. (unicode 被编码后的)某种编码类型的字符,比如 UTF-8,GBK 等类型的字符。

    Python2 中字符的类型:

    • str: 已经编码后的字节序列

    • unicode: 编码前的文本字符


    Python3 中字符的类型:

    • bytes: 编码前的字节序列
    • str: 编码过的 unicode 文本字符

    2 输入input

    python2:name=raw_input('请输入姓名')

    python3:name=input('请输入你的姓名')


    3 输入print

    python2:print "你好"

    python3:print("你好")


    4 数字表示

    python2: 64位机器,范围 -263~263-1

    超出上述范围,python自动转化为long(长整型) ;注:long(长整型)数字末尾有一个L

    python3: 所有整型都是int, 没有long长类型


    5 整型除法

    python2:只能保留整数位

    python3:可以保留所有内容


    6 range

    python2:

    • xrange:不会在内存中立即创建,而是在循环时,边循环边创建
    • range:在内存立即把所有的值创建

    python3:

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

    7 字典

    python2:返回列表,通过索引可以取值

    python3:返回迭代器,只能通过循环取值,不能通过索引取值


    8 class

    python2.7中经典类和新式类混合

    python3中都是新式类

    经典类中使用深度优先,新式类中使用广度优先

    python2不能使用super

    python3可以使用super

  • 相关阅读:
    C段/旁站,子域名爆破的概念
    Linux USB Printer Gadget Driver
    Multifunction Composite Gadget
    PXA2xx SPI on SSP driver HOWTO
    SPI用户空间API
    Linux内核SPI支持概述
    Industrial I/O
    I2C设备驱动程序从用户空间绑定控制(旧内核)
    I2C 10-bit 地址
    Slave I2C
  • 原文地址:https://www.cnblogs.com/kai-/p/12116617.html
Copyright © 2011-2022 走看看