Python 函数参数有冒号 声明后有- 箭头
在python3.7 环境下 函数声明时能在参数后加冒号,如图:
def f(ham: str, eggs: str = 'eggs') -> str :print("Annotations:", f.__annotations__)print("Arguments:", ham, eggs)return ham + ' and ' + eggsprint(f("test","abc"))
可能有疑问,python不是动态类型语言 ,难不成还能指定参数类型?
来看一下打印结果:
但同时也确实能传其他类型的值 如:f(“test”,123)
那结果如何呢? 如下:
当然会报错了啊,返回值是一个字符串,int型不能参与字符串拼接,那参数后写一个:str 和 ->str是什么意思呢?
在官方文档指明.__annotations__是函数的参数注释和返回值注释:
所以打印出Annotations: {‘ham’: <class ‘str’>, ‘eggs’: <class ‘str’>, ‘return’: <class ‘str’>}
其实并没有指定类型 只是写函数的人提醒用函数的人最好传什么类型的参数,因为最后需要两个参数进行字符串拼接;
当然,也可以直接写字符串提醒:
'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:857662006
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
def f(ham: "传一个字符串", eggs: str = 'eggs') -> str :print("Annotations:", f.__annotations__)print("Arguments:", ham, eggs)return ham + ' and ' + eggsprint(f("test",123))
而声明函数后那个箭头:"->" 是返回值的注释,-> str 意思即是提醒函数使用者返回值会是一个str型。
Python 函数参数有冒号 声明后有- 箭头相关推荐
- Python 函数参数有冒号 声明后有- 箭头 返回值注释 参数类型注释
在python3.7 环境下 函数声明时能在参数后加冒号,如图: 1 def f(ham: str, eggs: str = 'eggs') -> str : 2 print("Ann ...
- python冒号声明类型_Python 函数参数有冒号 声明后有- 箭头 返回值注释 参数类型注释...
在python3.7 环境下 函数声明时能在参数后加冒号,如图: 1 def f(ham: str, eggs: str = 'eggs') -> str : 2 print("Ann ...
- python中gt是什么意思_Python中的函数参数有冒号 声明后有-gt; 箭头
在python3.7 环境下 函数声明时能在参数后加冒号,如图: def f(ham: str, eggs: str = 'eggs') -> str : print("Annotat ...
- python函数参数定义不合法_下列哪种函式参数定义不合法?
python 函数参数定义有四类: 1,必选参数:调用函数时候必须赋值的参数. a,须以正确的顺序传入函数 b,调用时的数量必须和声明时的一样 def exa(x): return x #b作为参数进 ...
- python函数参数*arg和**kwargs分别代表什么?
python函数参数*arg和**kwargs分别代表什么? 注意: 注意:参数arg.*args.**kwargs三个参数的位置必须是一定的.必须是(arg,*args,**kwargs)这个顺序, ...
- python 函数参数 (必选参数、默认参数、可选参数、关键字参数)
默认参数增加 (x=None), if x: 能选择是否执行对x的操作 参考文章:python 函数参数(必选参数.默认参数.可选参数.关键字参数)
- Python函数参数学习
Python函数参数笔记(简) --位置参数[必选参数] 指一般参数 --默认参数 指带一个默认值的参数 --可变参数(自动组装成一个tuple) def calc(*num): ...
- python函数参数类型及顺序_python函数参数类型及其顺序
根据inspect模块官文文档中关于函数参数类型的相关说明,python函数参数共有五种类型,按顺序分别为:POSITIONAL_ONLY.POSITIONAL_OR_KEYWORD.VAR_POSI ...
- python函数参数类型及其顺序
根据inspect模块官文文档中关于函数参数类型的相关说明,python函数参数共有五种类型,按顺序分别为:POSITIONAL_ONLY.POSITIONAL_OR_KEYWORD.VAR_POSI ...
最新文章
- 在Dos下运行exe程序的时候出现找不到Cygwin1.dll文件的情况总结
- FPGA的设计艺术(3)静态时序分析
- linux vi 强制退出_linux的编辑大法
- 常见八种安卓开发报错的方式
- Educational Codeforces Round 88 D. Yet Another Yet Another Task(巧枚举)
- windows下python环境搭建_Linux/Windows下Python环境搭建步骤
- a java虚拟机_Java虚拟机
- 图数据库与关系数据库的实验对比——意大利商会 InfoCamere 案例
- 数据返回nan_数据处理教程
- Django中的form如何设置field的html属性呢?
- 疯狂连连看之开发游戏界面组件一
- PHP ceil()函数
- ccs 中文乱码_关于字符集和乱码的思考
- java doc 转 pdf_java doc转pdf(示例代码)
- 服务器2003系统密钥,服务器2003系统密钥
- webstorm 光标换行快捷键
- EasyExcel注解方式校验数据行
- 0基础学RS(三)路由器基本配置
- JavaScript-截取字符串
- 强制删除鲁大师所有文件
热门文章
- Specified VM install not found: type Standard VM, name jdk1.6_ 的疑问
- Java 获取本机IP和Mac以及网卡信息
- xcode代码没颜色的解决方案
- 关于大数据的那些事儿
- win10北通手柄没反应_《动物森友会》怎么玩出新花样?北通宙斯游戏手柄宏玩法了解下...
- 【配置】固定资产组织结构配置
- 【转】ABAP的坑5
- 与NWBC相关的服务器端配置
- 什么是BS结构、CS结构、RIA结构程序
- 批创建清账凭证,POSTING_INTERFACE_CLEARING