我有以下代码不起作用:
def call_row(body_part):
row = self.__call__()[body_part].loc[str(row_index)].tolist()
return row[0], row[1]
vector_centre = Vector2D(x, y = call_row(body_part_centre))
我知道我可以通过将其更改为以下内容来解决问题:
def call_row(body_part):
row = self.__call__()[body_part].loc[str(row_index)].tolist()
return row[0], row[1]
x, y = call_row(body_part_centre)
vector_centre = Vector2D(x, y)
是的,Vector2D是我自己定义的自定义类。
我没有找到这种优雅的解决方案。这是最“蟒蛇禅”的风格,或者我们可以做得更好吗?我想关注PEP8。
我的问题最明确的版本是:有没有办法从对象实例化中的元组中提取值而不牺牲优雅?
您可以使用unpack运算符:
vector_centre = Vector2D(*call_row(body_part_centre))