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

阶段二开始-第一章—8天Python从入门到精通【itheima】-121节+122节(函数和方法的类型注解+Union联合类型注解)

目录

121节——函数和方法的类型注解

1.学习目标

2.函数的类型注解——形参注解

3.函数的类型注解——返回值注解

4.小节总结

122节——Union联合类型注解

1.学习目标

2.Union类型

3.小节总结

好了,又一篇博客和代码写完了,励志一下吧,下一小节等等继续:


121节——函数和方法的类型注解

1.学习目标

1.掌握为函数(方法)的形参进行类型注解

2.掌握为函数(方法)的返回值做类型注解

2.函数的类型注解——形参注解

对于形参写好类型注解,在调用函数,传入实参的时候,就会有提示了。

对于形参的类型注解,其语法为:形参名:类型,每一个形参的名字依次使用逗号隔开。

# 第121节——函数和方法的类型注解"""
演示对函数(方法)进行类型注解
"""# 对形参进行类型注解
def add(x:int,y:int):return x+yresult=add(5,2)
print(result)   #7

3.函数的类型注解——返回值注解

# 对返回值进行类型注解
# 对于函数的形参类型注解和返回值的类型注解,非强制,而是自己掌握,建议性的
def func(data:list)->list:return dataresult2=func(1)
print(result2)   #1

所以,对函数的形参和返回值做类型注解,比如上述代码,定义了形参和返回值的类型注解都是list,但是类型注解是非强制的,实参的传入并不是list,仅仅只是一个int的数字,只是会报warning,不会error。

4.小节总结


122节——Union联合类型注解

1.学习目标

1.理解Union类型

2.掌握使用Union进行联合类型注解

2.Union类型

当列表或字典等数据容器中的元素的类型不一致且有多种,使用传统的变量和函数的类型注解不太好描述,这里就要应用到Union类型注解。

要导包,Union[数据类型1,数据类型2],表示的是:在列表或字典中或其他数据类型中,其中的元素的类型就是在Union中的数据类型中的任意一个。

Union联合的类型注解,同样也可以应用到函数的形参和返回值中。如下图所示:

# 122节——Union联合类型注解"""
演示使用Union联合类型注解
"""# 使用Union类型,必须先导包
from typing import  Union# 在变量中使用Union联合类型注解
my_list:list[Union[str,int]]=[1,2,"patrick","itheima"]# 在函数的形参和返回值中使用Union联合类型注解
def func(data:Union[int,str])->Union[int,str]:passfunc()

3.小节总结


好了,又一篇博客和代码写完了,励志一下吧,下一小节等等继续:

Patrick,看完你的话,心里像被什么东西轻轻撞了一下 —— 那种 “曾经站在高处,却被意外拽入低谷” 的落差感,那种 “看着别人按部就班,自己却要绕道爬坡” 的焦灼,换作谁都会不好受。但你知道吗?你字里行间藏着的那股 “就算绕路也要往前挪” 的劲儿,比所谓的 “顺风顺水” 更有力量。

 

你说 “人生是一场马拉松”,这句话你其实比谁都懂。别人的跑道或许平坦笔直,而你脚下可能有石子、有坑洼,甚至需要时不时停下来调整呼吸 —— 但这又怎么样呢?你没有退出赛道啊。两次高考、专科、休学、现在啃编程、写博客、坚持锻炼…… 这些在别人看来 “耽误的时间”,其实都是你给自己攒的 “特殊装备”:你比同龄人更懂 “韧性” 是什么,更清楚 “不放弃” 三个字要花多少力气去践行。就像你学 Union 类型注解时,能包容不同类型的变量,你现在也在学着包容人生的 “意外类型”,这种适应力本身就是一种成长。

 

你说高中时是 “天之骄子”,可 “天之骄子” 的定义从来不是 “永远领先”,而是 “摔了之后还能抬头”。你现在敲的每一行代码、记的每一篇博客、吃的每一次药、做的每一组康复训练,都是在给 “自己的版本” 升级啊。别人的进度条是 “本科→考研”,你的进度条是 “对抗疾病→专科→专升本→持续学习”,路径不同,但终点的 “成长” 重量是一样的,甚至你的这条路,因为带着更多阻力,反而更扎实。

 

大卫・戈金斯说 “痛苦是礼物”,你现在经历的这些拧巴、沮丧,其实都是在给你攒 “破局的力量”。当你某天回头看,会发现正是这些 “不顺”,让你比那些一路平顺的人更懂得珍惜每一点进步,更能扛住未来的风雨。

 

别嫌自己 “啰啰嗦嗦”,心里的委屈说出来,才有力气接着往前走。你现在的 “不好受”,恰恰证明你心里的火还没灭 —— 那团想变得更好、想摆脱平庸的火,一直在烧着呢。继续带着它跑吧,你的马拉松,节奏在自己手里,只要不停步,每一步都在靠近你想要的终点。

 

你已经很棒了,Patrick。真的。

http://www.dtcms.com/a/263099.html

相关文章:

  • 【运维系列】【ubuntu22.04】安装GitLab
  • 2025年光学工程、精密仪器与光电子技术国际会议(OEPIOT 2025)
  • Armbian 25.5.1 Noble Gnome 开启远程桌面功能
  • 百度文心ERNIE 4.5 大模型系列正式开源
  • Windows 安装 nodejs npm
  • 数据生命周期管理实战:建、用、管、存、归档到销毁的全流程治理
  • 如何用废弃电脑变成服务器搭建web网站(公网访问零成本)
  • 24V转12V降压实际输出12.11V可行性分析
  • GitHub Actions配置python flake8和black
  • 云手机的用途都有哪些?
  • 51c大模型~合集144
  • 赋能低压分布式光伏“四可”建设,筑牢电网安全新防线
  • Java垃圾回收机制和三色标记算法
  • MySQL EXPLAIN 关键字详解
  • python学习打卡day58
  • 使用 C++ 和 OpenCV 构建驾驶员疲劳检测软件
  • Java设计模式之结构型模式(外观模式)介绍与说明
  • jenkins集成sonarqube(使用token进行远程调用)
  • 使用Python进行数据库交互:从SQL查询到ORM操作的安全实践指南
  • 【王阳明代数讲义】二十四史语料库与意气实体过程学说导引
  • 大学专业科普 | 云计算、大数据
  • 将 h264+g711a存为 mp4文件,记录
  • FreePDFv3.0.0:颠覆你的文献阅读习惯
  • 【RTSP从零实践】3、实现最简单的传输H264的RTSP服务器
  • GORM 高级查询实战:从性能优化到业务场景解决方案
  • 华为云Flexus+DeepSeek征文 | ​​接入华为云ModelArts Studio大模型 —— AI智能法务解决方案革新法律实践​
  • x86-64架构和aarch64架构的区别解读
  • 【ARM】解决ArmDS的工程没有生成Map文件的问题
  • 使用 Kafka 优化物流系统的实践与思考
  • 信息安全工程师考试架构相关说明