首页 > 编程语言 >Python typing 的使用总结

Python typing 的使用总结

时间:2024-06-13 17:23:41浏览次数:29  
标签:总结 Python List str typing 类型 import def

1. 类型提示(Type Hints):Python 3.5引入了类型提示,这是一种新的语法特性,允许在函数声明中指定参数和返回值的预期类型。这些类型注解对Python解释器没有任何影响,但是可以被类型检查器、IDE、linter等工具用来捕获类型错误。

def greet(name: str) -> str:
    return 'Hello, ' + name

2. 内置类型:typing模块包含了所有Python内置类型的别名,如List、Dict、Tuple等。

from typing import List, Dict

def count_words(text: str) -> Dict[str, int]:
    ...

3. 泛型:可以使用typing模块定义泛型类型,例如List[int]表示整数列表。

from typing import List

def squares(nums: List[int]) -> List[int]:
    return [num ** 2 for num in nums]

4. 可选类型:Optional类型表示值可以是指定的类型,也可以是None。

from typing import Optional

def find_user(user_id: int) -> Optional[User]:
    ...

5. 字面量类型:Literal类型用于表示变量的值只能是特定的几个字面量中的一个。

from typing import Literal

def get_status(status: Literal['connected', 'disconnected']):
    ...

6. 类型别名:可以使用类型别名为复杂的类型注解创建简短的名称。

from typing import Dict, Any

JSON = Dict[str, Any]

def parse(json: JSON) -> JSON:
    ...

 

标签:总结,Python,List,str,typing,类型,import,def
From: https://www.cnblogs.com/watermeloncode/p/18246320

相关文章

  • 高一高考集训总结赛
    $\quad$直接变堂食,考试完不到3分钟我的分数翻倍了(......
  • 用于NLP的Python:使用Keras的多标签文本LSTM神经网络分类|附代码数据
    全文下载链接:http://tecdat.cn/?p=8640在本文中,我们将看到如何开发具有多个输出的文本分类模型。我们开发一个文本分类模型,该模型可分析文本注释并预测与该注释关联的多个标签。多标签分类问题实际上是多个输出模型的子集。在本文结尾,您将能够对数据执行多标签文本分类。数据集......
  • 亏钱、踩坑总结的经验之47:带炒股
    小a听朋友说炒股赚钱了,心动了,但是自己不懂,朋友说自己也不懂,但是他有老师,老师说怎么买就怎么买。小a被朋友拉进群,所有人都在鼓吹老师的好,听得久了小a也就信了,于是跟着别人开户买股票。恰逢牛市,小赚几笔。心里开始膨胀不断加仓,熊市来临,最终倾家荡产,朋友也悄悄的把他拉黑跑路了......
  • python运行js代码拿到逆向数据-execjs库
    #前提安装了node.js并且设置环境变量https://blog.csdn.net/bestyellow/article/details/119820509importsubprocessfromfunctoolsimportpartialsubprocess.Popen=partial(subprocess.Popen,encoding='utf-8')importexecjs#如果funcs_name是js代码里面的函数名字var代......
  • 移除元素总结
    27.RemoveElementclassSolution{public:intremoveElement(vector<int>&nums,intval){intslow=0;for(intfast=0;fast<nums.size();fast++){if(nums[fast]!=val){nums[slow++]=nums[fast];......
  • 6.15 实验总结
    实验总结实验一:黄金分割法(0.618法)程序设计通过黄金分割法的实践,我深刻体会到了数学理论与实际问题结合的魅力。从编写代码实现0.618搜索法到观察算法逐步逼近最优解的过程,我不仅掌握了这种经典优化算法的精髓,还提升了编程技巧,包括函数定义、循环与条件判断等基本技能。实验中,我......
  • 事后诸葛亮会议总结
    一、设想与目标我们的软件要解决什么问题,是否定义的很清楚?我们是OJ项目问题页面优化,我们要解决目前页面的布局不合理问题需要完善页面的布局构造。是否有充足的时间来做计划?有充足的时间来做计划团队在计划阶段是如何解决同事们对于计划的不同意见的?把每个人的意见都说出来......
  • python 赋值后is ==遇到的问题
    在python中小整数对象池包括[-5,256]。这之间的小整数数值相同时在小整数对象池中属于同一对象即是aisb返回True。简单字符串也是如此,对于其他对象则不适用简单来说 is与notis比较的是数字的地址                ==判断的是数字的值在计算机中的......
  • Python 学习笔记
    第二章编程基础那点事2.6模块在Python用import或者from...import来导入相应的模块。一个模块就是一个文件,模块是保存代码的最小单位,在模块中可以声明变量、函数、属性和类等Python代码元素。将整个模块导入,格式为: importsomemodule 从某个模块中导入某个函数,格......
  • 6.13 个人总结
    在这个学期的学习旅程中,我作为软件工程专业的学生,经历了从理论到实践的全方位锻炼,不仅在专业技能上取得了显著进步,也在团队协作、项目管理和自我认知方面获得了宝贵的经验。以下是对我本学期学习经历的全面总结,包括对上述问题的深入思考。 1.课程计划完成程度回顾我的第一周课......