• 技术文章 >常见问题 >Python常见问题

    python3.6与3.4版本的区别是什么?

    yangyang2020-05-30 11:32:07原创3412

    python3.6与python3.4版本的区别:

    python3.4新增功能如下:

    采用pip作为Python包的默认安装方式。

    增加了标准库pathlib,用于按面向对象的方式操作文件路径。如下:

    >>> from pathlib import Path
    >>> p = Path('/root/test/1.py')
    >>> p.name
    '1.py'
    >>> p.suffix
    '.py'
    >>> p.exists()
    False

    增加了标准库enum,用于定义枚举类。如下:

    >>> from enum import Enum
    >>>
    >>> class Test(Enum):
    ...     a = 1
    ...     b = 2
    ...     c = 3
    ...
    >>> Test.a
    <Test.a: 1>
    >>> Test['a']     # 可按名字索引
    <Test.a: 1>
    >>> list(Test)    # 可迭代
    [<Test.a: 1>, <Test.b: 2>, <Test.c: 3>]

    增加了标准库asyncio,用于实现异步IO。

    增加了标准库statistics,提供了求平均值、中位数、方差等运算的函数。

    增加了标准库tracemalloc,用于跟踪内存分配的情况,方便调试。

    python3.6新增功能:

    dict中的元素会按插入顺序存储。

    可以在数字中插入下划线作为分隔符,提高可读性。如下:

    >>> 1_000_111_000
    1000111000
    >>> '{:_}'.format(1000000)    # 格式化字符串时也可输出下划线
    '1_000_000'

    给字符串加上前缀f之后,就会执行花括号 {} 内的语句。如下:

    >>> a = 1
    >>> f'a={a}'
    'a=1'
    >>> f'{int(1) + 2}'
    '3'

    定义元类的更好方法:给类定义__init_subclass__()方法,用于初始化子类。如下:

    class TestBase:
        subclasses = []
    
        def __init_subclass__(cls, *args, **kwargs):
            super().__init_subclass__(*args, **kwargs)
            cls.subclasses.append(cls)

    增加了标准库secrets,用于生成安全的随机数,可用作密码、加密密钥。

    更多Python知识请关注Python自学网

    专题推荐:python
    上一篇:python3.6有几个版本? 下一篇:python3能写app吗?

    相关文章推荐

    • Python3目前最新版本是多少?• python3.7 idle怎么安装• python3.6有几个版本?

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网