python里的def 方法中->代表什么意思?
python,def,方法,-&,gt,代表,什么,意思
2025-04-07 09:01:30 时间
大家好,又见面了,我是你们的朋友全栈君。
功能注释
函数注释是关于用户定义函数使用的类型的完全可选元数据信息(请参阅PEP 3107和 PEP 484了解更多信息)。
注释__annotations__
作为字典存储在函数的属性中,对函数的任何其他部分都没有影响。参数注释由参数名称后面的冒号定义,后跟一个表达式,用于评估注释的值。返回注释由->
参数列表和冒号表示def
语句结尾之间的文字,后跟表达式定义。以下示例具有位置参数,关键字参数和注释的返回值:
def f(ham: str, eggs: str = 'eggs') -> str:
print("Annotations:", f.__annotations__)
print("Arguments:", ham, eggs)
return ham + ' and ' + eggs
f('spam')
# Annotations: {'ham': <class 'str'>, 'eggs': <class 'str'>, 'return': <class 'str'>}
# Arguments: spam eggs
我们可以发现
-> 主要是标记返回值数据类型;
拿上面例子来说,在函数f中,标记参数ham为str类型,eggs为str类型;return的值为->后面标记的类型str。
这样写的话,我们光看代码就可以知道该方法返回什么类型的数据,而不需要去调试。
但是如果指定不一致呢,比如说,我们标记f的返回结果为int,但是实际结果却是str。
此时,开发工具里面应该会报错,提示返回值不对,但是程序照样正常运行,不会抛异常。
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/156080.html原文链接:https://javaforall.cn
相关文章
- 基于python的安全帽识别安全帽检测可以检测图片,视频流,有界面[通俗易懂]
- Python 二次开发 AutoCAD 简介「建议收藏」
- 解决Python扩展: Unable to find vcvarsall.bat[通俗易懂]
- Python 一网打尽<排序算法>之从希尔排序聊聊分治算法的哲学
- python爬取网站m3u8视频,将ts解密成mp4,合并成整体视频「建议收藏」
- 使用python快速开发桌面小工具
- Python中break和continue区别「建议收藏」
- Python 模板渲染库 yaml 和 jinja2 的实战经验分享
- python进制转换函数-Python中进制转换函数的使用
- Python与数据库之学员管理系统「建议收藏」
- python 获取时间戳_datetime获取当前时间
- Python浪漫表白源码合集(爱心、玫瑰花、照片墙、星空下的告白)「建议收藏」
- Scrapy 升级前面python抓取全部图集谷女孩图片,这次抓取某女孩全部写真集,有能力自己改写抓取全部,要替换自己喜欢女孩地址
- 【python】Excel转json「建议收藏」
- python中astype用法_浅谈python 中的 type(), dtype(), astype()的区别[通俗易懂]
- 用Python写个魂斗罗
- Python || 皖事通安康码截图信息简易识别采集
- 视频识别车牌号(Python)
- 用Python爬取王者荣耀英雄皮肤海报图
- 【Python问题解决】---- RecursionError: maximum recursion depth exceeded while calling a Python object