Python自定义函数基础(3)

(7)lambda表达式
  可以使用 lambda 关键字创建小的匿名函数。此函数返回其两个参数的总和        lambda a, b:a + b
Lambda 函数可以用于任何函数对象。他们在语法上限于单个表达式。语义上,他们都只是正常的函数定义的语法糖。嵌套的函数定义类似,lambda 函数可以从包含范围引用变量。(之后的文章会详细讲解lambda表达式的相关操作)
def make_incrementor1(n):
    return lambdax:x+n
 
f=make_incrementor1(42)
 
print(f(1))
 
>>>
=========== RESTART:D:/python/pythonLearning/KeywordArguments.py ===========
43
>>>
(8) Function Annotations函数注解
首先是一个简单的例子
def f(ham:str,eggs:str='eggs2')->str:
  print("Annotations:",f.__annotations__)
  print("Arguments:",ham,eggs)
  return str(ham)+' and ' +eggs
s=f(‘abc’)
print(s)
结果:
>>>
=========== RESTART:D:/python/pythonLearning/KeywordArguments.py ===========
Annotations: {'ham': <class 'str'>,'eggs': <class 'str'>, 'return': <class 'str'>}
Arguments: abc eggs2
abc and eggs2
>>> 
 
函数注解是完全可选的元数据信息,它告诉人们这个函数返回的类型应该是什么类型,函数形参应该是什么类型。但是传入其他类型可能会报错,当然,这并非绝对,只不过是开发者给调用者的一个建议。上面的例子中,即使实参传入数字也是不会报错的。(这段在python3.6帮助文档上的说明看得我很头疼,比较乱,我领会精神写的)
 
注解存储在 __annotations__ 属性中,以字典的形式存在,对其他部分的功能没有任何影响。
参数注释:在参数名称的后面加一个冒号,其后是期待实参的类型。
返回值注解:函数的参数列表外面,冒号前面,加上一个 –>,后面是期待返回的类型。

下面关于Python的文章您也可能喜欢,不妨参考下:

《Python核心编程 第二版》.(Wesley J. Chun ).[高清PDF中文版] 下载见

零基础如何入门Python

Ubuntu 14.04安装Python 3.3.5 

CentOS 6.5 脚本自动化装 Python2.6升级2.7 

CentOS上源码安装Python3.4 

Ubuntu 14.04下Python数据处理环境搭建 

Python Paramiko模块安装和使用 

《Python开发技术详解》.( 周伟,宗杰).[高清PDF扫描版+随书视频+代码]

在CentOS 6.5上安装Python2.7 

Ubuntu 14.04 LTS下编译安装Open Babel和Python语言绑定

Python常见数据结构整理 

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/97cd76b6a6d405fb7aea88d01d78d3de.html