什么是在__init__不创建新实例的情况下从中提取参数的方法.代码示例:
class Super:
def __init__(self, name):
self.name = name
Run Code Online (Sandbox Code Playgroud)
我看起来像Super.__dict__.keys()类型解决方案.只是为了检索名称参数信息而不添加任何值.有这样的选择吗?
假设我有以下示例:
class foo:
...
def bar(self, w, x, y, z, ...):
self.w = w
self.x = x
self.y = y
self.z = z
...
Run Code Online (Sandbox Code Playgroud)
我希望通过参数循环将n个属性赋值行减少bar()到一个赋值行集setattr().为此目的,有没有一种好方法可以循环通过所述论点?
我希望保留已定义的参数名称,以便限制传递给函数的参数数量以及传递它们的顺序.我也明白函数可以像对象一样处理 ; 那么有可能获得一个已定义参数的列表作为函数的属性并迭代它吗?
我想要一个可以像这样返回变量/对象名称的函数:
def get_variable_name (input_variable):
## some codes
>>get_variable_name(a)
'a'
>>get_variable_name(mylist)
'mylist'
Run Code Online (Sandbox Code Playgroud)
它看起来很傻但我需要函数来构造关于变量的表达式,以便稍后在'exec()'上.有人可以帮忙写一下'get_variable_name'吗?
我想我的函数func(*args, **kwargs)返回一个字典,其中包含我给它的所有参数.例如:
func(arg1, arg2, arg3=value3, arg4=value4)
Run Code Online (Sandbox Code Playgroud)
应该返回一个这样的字典:
{'arg1': value1, 'arg2': value2, 'arg3': value3, 'arg4': value4 }
Run Code Online (Sandbox Code Playgroud) 我想知道是否有一种方法可以将命名参数转换为dict.
我知道使用**kwargs代替单个命名参数将非常简单。
def func(arg1=None, arg2=None, arg3=None):
# How can I convert these arguments to {'arg1': None, 'arg2': None, 'arg3': None}`
Run Code Online (Sandbox Code Playgroud) python ×5
arguments ×2
dictionary ×2
args ×1
function ×1
kwargs ×1
named ×1
oop ×1
python-2.7 ×1
setattr ×1