美文网首页
python3与python2区别

python3与python2区别

作者: 随侯珠 | 来源:发表于2019-04-16 22:06 被阅读0次

    1、py3运行效率更快

    2、默认源文件编码ASCII变为UTF-8,以前文件前加入的coding=utf-8不再需要

    3、针对unicode的处理有了明显的改善,效率明显提

    4、int和long进行了统一,统一为int

    5、True、False、None都是关键词

    6、必须以b'...'表示二进制数据,可以使用u'..'表示字符串,不加u也表示字符串

    7、移除<>不等号,使用“!=”表示不等号关系
    1)2!=3
    2)2<>3 #出现语法错误

    8、调整除法符号‘/’的用法,只返回浮点数,要返回整数要使用“//”

    9、py3运算对数据的类型要求更加的严格

    10、print是一个函数,不再是一个语句,其中不需要用空格,后面打印的内容需要有括号括起来

    # 将内容输出到文件
    print(123, 321, 1234567, sep='\n', file=open('test.txt', 'a'))
    

    11、exec函数用法发生变化

    12、raw_input统一为input

    13、for循环的变量不再泄露在全局变量中,此bug已修复

    14、xrange改名range,返回不再是list,而是range对象

    15、python3具有单一的str类型,其类型相当于python2的unicode,python3所有的字符串都是unicode

    16、f-string 功能格式化字符串

    a = 123
    b = 431
    print(f'{a} {b}')
    

    17、更简易的super

    # Python 2
    class MySubClass(MySuperClass):
        def __init__(self, name, **options):
            super(MySubClass, self).__init__(name='subclass', **options)
    
    # Python 3
    class MySubClass(MySuperClass):
        def __init__(self, name, **options):
            super().__init__(name='subclass', **options)
    

    18、列表合并、字典合并

    x = dict(a=1, b=2)
    y = dict(b=3, d=4)
    z = {**x, **y} 
    
    a = [1,2,3]
    b = [4,5,6]
    c = [*a, *b]
    

    相关文章

      网友评论

          本文标题:python3与python2区别

          本文链接:https://www.haomeiwen.com/subject/ztniwqtx.html