当前位置: 首页 > 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#

http://www.dtcms.com/a/22843.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语言实现通用排序函数:深入理解指针与函数指针的魅力
  • 给定非均匀012产生函数,构造均匀012产生函数
  • Pycharm+CodeGPT+Ollama+Deepseek
  • 【1.8w字深入解析】从依赖地狱到依赖天堂:pnpm 如何革新前端包管理?
  • python学习笔记,python处理 Excel、Word、PPT 以及邮件自动化办公
  • Fastapi + vue3 自动化测试平台(5)-- 封装树形结构列表生成器
  • NewMap10.3土地勘测定界自动化系统
  • 程序员-DeepSeek深度使用指南
  • Linux中线程创建,线程退出,线程接合
  • led+串口代码 重定向 STM32F030F4P6 fgetc multiply defined错误
  • 浏览器的Cookie 过期时间存储