def test_func(a, /, b):
print(a, b)
test_func(1, 2)
函数参数中的 /
是个啥?
black 和 flake8 都提示异常,但是确实是可以正确执行的.
python 3.9
1
jdhao 2020-12-26 19:36:19 +08:00 via Android
不懂,没见过,楼下回答
|
2
chaleaoch OP 查到了. 仅限位置参数.
|
3
Dreax 2020-12-26 20:18:01 +08:00
|
4
renmu123 2020-12-26 20:19:52 +08:00 via Android
3.7 还是 3.8 加入的新语法
|
5
abersheeran 2020-12-26 21:30:46 +08:00 3
/ 之前的参数都不能以 name=value 这种形式传参。
与之类似功能的是 def f(a, *, b): ... * 之后的都必须以 name=value 的形式传参。 |
6
XIVN1987 2020-12-26 23:33:47 +08:00
|
7
crayygy 2020-12-27 10:48:31 +08:00 via Android
Python 3.6 3.7 3.8 好像都有一些新增的语法,之前遇到过一次脚本是基于 3.6 写的,结果在 Ubuntu 16.04(预装的 Python 3.5 以下的)就怎么也跑不过,查了以后才知道
|