Python3新特性 类型注解 以及 点点点 ...
Python3 的新特性
Python 是一种动态语言,变量以及函数的参数是 不区分类型 的
-
在 函数中使用类型注解 相当于 给 形参的 类型 设置了一个备注
# 使用类型注解 a b 参数需要 int 类型的 变量 def func(a: int = ..., b: int = ...): return a + b
使用 PyCharm 编写python代码时 函数调用会有默认参数的 提示
如果传递的 参数不是 指定的类型 正常使用也不会报错的 但是 传参时会有阴影 提示
def func(a: int = ..., b: int = ...):
return a + b
c = func(1, 2)
>> 3
st = func('a', 'b')
>> ab
a: int = ... 就是给 a 设置的默认值
def func(a: int = ...):
print(a) # Ellipsis
func()
def func(a: int = 12345):
print(a) # 12345
func()
>> ...
使用Python3 新特性
...
(Ellipsis
)-
用法 跟 pass 类似 但是pass 不可以 指定 为函数的 默认值
print(...) # Ellipsis
可以 替换 pass 来使用
# 不会报错
def func():
...
-
...
是一个固定的类型aa = ... print(type(aa)) # <class 'ellipsis'> print(id(...)) # 1720402224