首页 >后端开发 >Python教程 >如何使用 Typing 模块在 Python 中用输入和输出类型注释函数定义

如何使用 Typing 模块在 Python 中用输入和输出类型注释函数定义

Barbara Streisand
Barbara Streisand原创
2024-12-21 13:43:11499浏览

How to Use Typing Module to Annotate Function Definition with Input and Output Types in Python

此页面的目的?是解释如何在 Python 中使用类型提示,特别是对于返回字典列表的函数。
我正在慢慢地学习 David Baezley 的高级 Python 掌握,并且基于 How to Code 的程序设计系统方法,我用输入和输出类型注释函数,因为该定义决定了函数的形状。

  • 类型提示:提高代码可读性和可维护性。
  • 打字模块:提供更具体的类型注释。
  • PEP 484:在 Python 3.5 中引入了类型提示。
    • 查看更多:https://peps.python.org/pep-0484/#the-typing-module
  • 常见类型:List、Dict、Tuple、Union、Optional。
  • 指定字典列表:使用List[Dict[str, int]]作为返回类型。
  • 来自 Advanced Python Mastery 的示例,它读取提供的 .csv 文件,其中包含四列的公交车时间表并返回字典列表。大多数情况下,我想具体说明后一个事实。
  from typing import List, Dict
  import csv

  def read_rides(filename: str) -> List[Dict]:
      rides = []
      with open(filename, "r") as file:
          rows = csv.reader(file)
          headers = [row.strip() for row in next(rows)]
          print(f"ROW headers: {headers}")
          for row in rows:
              ride = {}
              for column_number, column_name in enumerate(headers):
                  ride[column_name] = row[column_number].strip()
              rides.append(ride)
      return rides

链接

https://peps.python.org/pep-0484/#the-typing-module
https://github.com/dabeaz-course/python-mastery/blob/main/Exercises/ex2_2.md
https://htdp.org/2022-2-9/Book/part_one.html#(part._sec~3adesign-func)

以上是如何使用 Typing 模块在 Python 中用输入和输出类型注释函数定义的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn