zoukankan      html  css  js  c++  java
  • 参数注解之inspect里混淆不清的一些属性整理

    def add(x:int,y:int=7) ->int:
        return x+y
    
    sig=inspect.signature(add) #inspect.Signature类
    print('函数签名: ',sig)
    #函数签名:  (x:int, y:int=7) -> int
    
    params=sig.parameters #mappingproxy类
    print('函数参数: ',params)
    #函数参数:  OrderedDict([('x', <Parameter "x:int">), ('y', <Parameter "y:int=7">)])
    
    print('*'*30)
    #******************************
    
    for k,v in params.items(): #键为str类,值为inspect.Parameter类
        print('函数参数映射对象键:{} ;函数参数映射对象值:{}'.format(k,v))
    #函数参数映射对象键:x ;函数参数映射对象值:x:int
    #函数参数映射对象键:y ;函数参数映射对象值:y:int=7
    
    for param in params.values():#parameters映射对象值
        print(param)
        #x:int
        #y:int
        print(param.name)
        #x
        #y
        print(param.annotation)
        #<class 'int'>
        #<class 'int'>
        print(param.kind)
        #POSITIONAL_OR_KEYWORD
        #POSITIONAL_OR_KEYWORD
        print(parma.default)
        #<class 'inspect._empty'>
        #7
    
    param_list1=list(params)
    print(param_list1)
    #['x', 'y']
    param_list2=list(params.keys())
    print(param_list2)
    #['x', 'y']
    param_list3=list(params.values())
    print(param_list3)
    #[<Parameter "x:int">, <Parameter "y:int=7">]
  • 相关阅读:
    js实现页面的全屏与退出
    vue父组件访问子组件
    v-contextmenu的使用(右键菜单)
    vue实现tab切换
    vue中子组件向父组件传值
    vue中父组件传数据给子组件
    RNN
    用于超参数随机化搜索的几个分布
    Numpy 函数总结 (不断更新)
    神经网络求导
  • 原文地址:https://www.cnblogs.com/hongdanni/p/9182324.html
Copyright © 2011-2022 走看看