Python小推车python学习

Python学习打call第二十二天:参数注解

2019-02-20  本文已影响15人  暖A暖

1.函数定义的弊端

2.什么是参数注解

def show(x: int, y: int) -> int:
    '''
    :param x:
    :param y:
    :return:
    '''
    return x * y
print(show(10,20)) # 200

3.使用参数注解的好处

4.Functools模块的使用

# 示例1
import inspect

def add(x:int, y:int, *args,**kwargs) -> int:
    return x + y
sig = inspect.signature(add)
print(sig) # (x: int, y: int, *args, **kwargs) -> int
print(sig.parameters) # OrderedDict([('x', <Parameter "x: int">), ('y', <Parameter "y: int">), ('args', <Parameter "*args">), ('kwargs', <Parameter "**kwargs">)])


# 示例2: partial偏函数
from functools import partial
def add(x, y):
    return x + y
partial_add = partial(add, x=1)
result = partial_add(y=2)
print(result)   #输出: 3

# lru_cache
from functools import lru_cache
import time

@lru_cache()
def add(x, y):
    time.sleep(10)
    return x + y

print(add(1,2))
print(add(2,3))
print(add(2,3))
print(add(2,3))
上一篇 下一篇

猜你喜欢

热点阅读