当前位置 : 主页 > 编程语言 > python >

python_弱类型的补助方案:提高编程效率/减少函数的错误调用:利用注解

来源:互联网 收集:自由互联 发布时间:2022-06-14
文章目录 ​​函数注解​​ ​​变量注解和类型注解​​ ​​额外示例:​​ ​​NewType:​​ ​​泛型注解(容器):​​ ​​Notes:​​ 函数注解 Python 3 提供了一种句法,用于为函数声


文章目录

  • ​​函数注解​​
  • ​​变量注解和类型注解​​
  • ​​额外示例:​​
  • ​​NewType:​​
  • ​​泛型注解(容器):​​
  • ​​Notes:​​

函数注解

Python 3 提供了一种句法,用于为函数声明中的参数和返回值附加元数据。
python_弱类型的补助方案:提高编程效率/减少函数的错误调用:利用注解_函数声明
​​​https://docs.python.org/zh-cn/3/library/typing.html​​

变量注解和类型注解

import math

def add(x: float, y: float) -> None:
# 除了函数注解,您当然可以为某个变量使用类型注解:(类似于kotlin风格写法)
pi: float = 3.142

print(pi)
print(x+y)

if __name__=="__main__":
add(1,2)


''' Type Comments[类型注解]:对位置比较严格: '''
def circumference(radius):
#type: (float) -> float
return 2 * math.pi * radius

额外示例:

有注解的 clip 函数:

def clip(text:str, max_len:'int > 0'=80) -> str:  

"""在max_len前面或后面的第一个空格处截断文本
"""
end = None
if len(text) > max_len:
space_before = text.rfind(' ', 0, max_len)
if space_before >= 0:
end = space_before
else:
space_after = text.rfind(' ', max_len)
if space_after >= 0:
end = space_after
if end is None: # 没找到空格
end = len(text)
return text[:end].rstrip()

NewType:

NewType(新类型名,类型名要对应的类型)
python_弱类型的补助方案:提高编程效率/减少函数的错误调用:利用注解_函数声明_02

泛型注解(容器):

python_弱类型的补助方案:提高编程效率/减少函数的错误调用:利用注解_函数声明_03
容器类型混用错误警告
python_弱类型的补助方案:提高编程效率/减少函数的错误调用:利用注解_python_04
python_弱类型的补助方案:提高编程效率/减少函数的错误调用:利用注解_函数声明_05

Notes:

函数声明中的各个参数可以在 : 之后增加注解表达式。如果参数有默认值,注解放在参数名和 = 号之间。如果想注解返回值,在’ ) '和函数声明末尾的 : 之间添加 -> 和一个表达式。

那个表达式可以是任何类型解中最常用的类型是类(如 str 或 int)和字符串(如 ‘int >0’)。

在示例 中,max_len 参数的注解用的是字符串。

Python 对注解所做的唯一的事情是,把它们存储在函数的
annotations 属性里。
仅此而已,Python 不做检查、不做强制、不做验证,什么操作都不做。

换句话说,注解对 Python 解释器没有任何意义。
注解只是元数据,可以供 IDE、框架和装饰器等工具使用。


上一篇:python_内置函数源代码查看
下一篇:没有了
网友评论