关于python 3.8 的新特性 - PEP 570 Positional-Only Argument

python 3.8 的新特性 - PEP 570 Positional-Only Argument

在最近更新的python3.8中出现了一个新特性,也是对之前一个版本中的关于函数参数的写法的一个符号吧,也就是*号,那么什么是这个*号呢,我们可以通过下面的例子了解到,因为平时用的也不是很多.

在定义函数的时候:
def foo(a,b,*,c,d): # a,b没有限制,c,d为关键字参数.
	pass
这小段代码中我们传递了4个参数,并且在中间穿插了一个*,这个*的意思是,在*后面传递过来的参数必须使用Keyword Arguments,也就是关键字参数,对前面的没有限制.

然后就是在python3.8中引入的/这个符号,其实就是对之前*符号的一个补充,就是限制/号之前的为位置参数

在定义函数的时候:
def foo(a,b,/,*,c,d) # a,b为位置参数,c,d为关键字参数.
posted @ 2019-10-17 14:55  cheerxiong  阅读(320)  评论(0编辑  收藏  举报