1.4.10. Python 3.4(2014/03/17)

pip 随时可用

  1. ensurepip 模块

    • 引入了 ensurepip 模块,用于确保 pip 的安装,这使得在所有 Python 安装中都能方便地使用 pip

新增模块

  1. asyncio 模块

    • 引入了 asyncio 模块,用于编写并发代码,支持事件循环、任务、协程和异步 I/O。

    • 这是 Python 标准库中的第一个异步编程框架。

    • 对于 Python 3.4,此模块被视为属于 provisional API。

      import asyncio
      async def main():
          print('Hello')
          await asyncio.sleep(1)
          print('World')
      asyncio.run(main())
      
  2. 枚举类型

    • 引入了 enum 模块,提供了枚举类型支持。例如:

      from enum import Enum
      
      class Color(Enum):
          RED = 1
          GREEN = 2
          BLUE = 3
      
  3. 路径对象

    • 新增了 pathlib 模块,提供了面向对象的文件系统路径操作方法。

      from pathlib import Path
      
      p = Path('/etc')
      for child in p.iterdir():
          print(child)
      
  4. 统计模块

    • 引入了 statistics 模块,提供了基本的统计函数,例如均值、中位数和标准差。

      import statistics
      
      data = [1, 2, 2, 3, 3, 3, 4, 4, 5]
      print(statistics.mean(data))
      print(statistics.median(data))
      print(statistics.stdev(data))
      
  5. tracemalloc 模块

    • 新增了 tracemalloc 模块,用于跟踪 Python 内存分配,帮助诊断内存泄漏问题。

      import tracemalloc
      
      tracemalloc.start()
      
      # Your code here
      
      snapshot = tracemalloc.take_snapshot()
      top_stats = snapshot.statistics('lineno')
      
      print("[ Top 10 ]")
      for stat in top_stats[:10]:
          print(stat)
      

改进的模块

  1. 改进的 unittest 模块

    • unittest 模块新增了 mock 子模块,用于创建模拟对象和函数,便于单元测试。

      from unittest import mock
      
      mock_obj = mock.Mock()
      mock_obj.method.return_value = 'result'
      print(mock_obj.method())
      
  2. 内置哈希算法

    • hashlib 模块新增了对 SHA-3 系列哈希算法的支持。