本文整理汇总了Python中types.FunctionType.__defaults__方法的典型用法代码示例。如果您正苦于以下问题:Python FunctionType.__defaults__方法的具体用法?Python FunctionType.__defaults__怎么用?Python FunctionType.__defaults__使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类types.FunctionType
的用法示例。
在下文中一共展示了FunctionType.__defaults__方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: chained_function
# 需要导入模块: from types import FunctionType [as 别名]
# 或者: from types.FunctionType import __defaults__ [as 别名]
def chained_function(meta, func, mod):
d = ModuleChainedDict(mod.__dict__, func.__globals__)
newfunc = FunctionType(func.__code, d)
newfunc.__doc__ = func.__doc__
newfunc.__defaults__ = newfunc.__defaults__
newfunc.__kwdefaults__ = func.__kwdefaults__
return newfunc
示例2: newObjCpt
# 需要导入模块: from types import FunctionType [as 别名]
# 或者: from types.FunctionType import __defaults__ [as 别名]
def newObjCpt(self, elt):
argNames = self.__code__.co_varnames[:self.__code__.co_argcount]
argValues = [elt]
wfunc = FunctionType(self.__code__, self.__globals__)
class Process(object):
__call__ = staticmethod(wfunc)
def __setattr__(s, name, value):
argValues[argNames.index(name)] = value
wfunc.__defaults__ = tuple(argValues)
def __getattr__(s, name):
return argValues[argNames.index(name)]
@classmethod
def __cptDefs__(cls):
cpts= {name : cpt for (name, cpt) in zip( argNames, self.__defaults__) if isinstance(cpt, _cptDef)}
return sorted(cpts.items(),key =lambda item:item[1].id)
process = Process()
argValues += [p.newObjCpt(process) for p in self.__defaults__[1:]]
wfunc.__defaults__ = tuple(argValues)
return process
示例3: patched_function
# 需要导入模块: from types import FunctionType [as 别名]
# 或者: from types.FunctionType import __defaults__ [as 别名]
def patched_function(function):
new_function = FunctionType(six.get_function_code(function), globals())
if six.PY3:
new_function.__kwdefaults__ = function.__kwdefaults__
new_function.__defaults__ = function.__defaults__
return new_function