Python笔记第十一节:参数注解,functools模块使用

本文探讨了Python动态语言的弊端,如类型检查困难和文档不足,然后介绍了函数注解作为解决方案,强调其辅助作用和在代码分析中的价值。接着,通过`inspect`模块展示了如何进行函数参数类型检查。还详细讲解了`functools`模块的`lru_cache`装饰器,用于实现函数缓存,并讨论了其应用场景和局限性。
摘要由CSDN通过智能技术生成

函数定义的弊端:因为python不是静态编译型语言,变量类型是在运行期觉得的。python是动态语言,变量随时可以被赋值,且能赋值为不同的类型,动态语言很灵活,但是这种特性也是弊端,要是不做类型检查很难发现是什么类型,只有到运行期间问题才显现出来,或者线上运行时才暴露出问题。 难使用:函数的使用者不知道你的函数设计,不知道该传入什么类型的数据 容易出错

那怎么解决这种动态语言的弊端呢 ,这时候就该叫超级飞侠了,这时候就应该增加文档Documentation String:这只是一个惯例,不是强制的标准,不能要求所有程序员一定要为函数提供说明文档,有时候函数更新了 文档未必会同步更新

举个栗子:  这是类型注解
def add(x,y):
    """					#这里就是文档描述 说明   
    
    :param x: 			#pycharm中打出三引号 再回车就会出现下面3列 然后可以说明类型
    :param y: 
    :return: 
    """
    return x + y
print(help(add))				#这里就是调用函数查看文档说明 help

函数注解Function Annotations

  1. 函数注解
    Python 3.5引入
    对函数的参数进行类型注解
    对函数的返回值进行类型注解
    只对函数参数做一个辅助的说明,并不对函数参数进行类型检查
    提供给第三方工具,做代码分析,发现隐
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值