所以我有一个对象:
class Particle(object):
def __init__(self, x, y, vx, vy, ax, ay):
self._x = int(x)
self._y = int(y)
self._vx = int(vx)
self._vy = int(vy)
self._ax = int(ax)
self._ay = int(ay)
# ...
我想从数字列表中创建该对象的实例。我该怎么办? Particle(list)
不起作用,因为它只输入列表,而不是列表中的每个值。非常感谢,我相信有一个非常明显的答案。
答案 0 :(得分:3)
以明星名列前的名单:
def foo(a, b, c):
print(a, b, c)
a = [1,2,3]
foo(*a)
# 1 2 3
星形解包列表,它提供3个单独的值。
答案 1 :(得分:2)
您需要的是“解包参数列表”。 以下是tutorial:
的示例>>> range(3, 6) # normal call with separate arguments
[3, 4, 5]
>>> args = [3, 6]
>>> range(*args) # call with arguments unpacked from a list
[3, 4, 5]