当前位置: 首页 > news >正文

基于 Python typing 模块的类型标注

Python 是动态类型语言,运行时不强制要求函数与变量类型标注,但是也支持标注类型,以便于类型检查,IDE提示等,提高代码质量。
Python 默认的类型注释比较简单,Python 3.5 新增了 typing 模块,扩展了类型功能。

变量类型标注

age: int = 25
name: str = "张三"
print(age, ' ', name)

函数参数和返回值 类型标注

def hello(name: str) -> str:
    return "Hello, " + name

列表类型标注

from typing import List

numbers: list[int] = [1, 2, 3]
# 或
numbers1: List[int] = [1, 2, 3]

字典类型标注

from typing import Dict

user_info: dict[str, str] = {"name": "Alice", "age": "25"}
user_info1: Dict[str, str] = {"name": "Alice", "age": "25"}

元组类型标注

from typing import Tuple

numbers: tuple[int] = (1, 2, 3)
# 或
numbers1: Tuple[int] = (1, 2, 3)
print(type(numbers))
print(type(numbers1))

typing.Union

Union[X, Y] 等价于 X | Y ,意味着满足 X 或 Y 之一。
Union

typing.Optional : 可选

Optional[X] 等价于 X | None (或 Union[X, None] )。

相关链接

https://docs.python.org/zh-cn/3.13/library/typing.html#

相关文章:

  • 容器化部署Kafka的最佳实践:基于KRaft模式的无ZooKeeper方案
  • spring如何解决循环依赖
  • 机器学习--逻辑回归
  • 烧烤炉出口亚马逊欧盟站CE认证EN1860安全标准
  • Game Maker 0.11:《The Sandbox》创作愿景的全新篇章
  • 软件评测师复习之计算机网络(4)
  • VScode运行后出现黑窗口
  • 页表是如何工作的
  • 【CSS】部分div禁用tailwindcss
  • 零基础入门机器学习 -- 第八章无监督学习与聚类
  • Android 13 上通过修改 AOSP 拦截 SystemUI 音量调节事件
  • Codeforces Round 1005 (Div. 2)(A-D)
  • kong身份认证插件详解之Basic Auth插件
  • 【Linux】--- 信号阻塞、信号捕捉
  • thingboard告警信息格式美化
  • 第二章:基础概念精讲 - 第五节 - Tailwind CSS Flex 和 Grid 布局实战
  • PCL 最远点采样(二)
  • 第一章-数制与码制
  • Linux /dev/null
  • 用C语言实现通用排序函数:深入理解指针与函数指针的魅力
  • 电子商务网站建设技巧/凡科建站下载
  • 免费的网站域名和空间/域名查询ip爱站网
  • 网站分类目录大多数依靠的是人为提交而不是蜘蛛/页面优化
  • 菏泽郓城住房和城乡建设局网站/百度导航怎么下载
  • 中国文化网站建设策划书/公司软文怎么写
  • 个人承接网站建设/长尾关键词挖掘站长工具