使用参数中的多个动态元组调用 Python 函数 (geopy.distance.great_circle())
Calling a Python Function (geopy.distance.great_circle()) with multiple dynamic tuples in arguments
我有一个动态创建的元组列表,因此它的长度可以变化。此列表的一个示例是:-
mylist=[(18.521428, 73.8544541), (28.6517178, 77.2219388), (18.9387711, 72.8353355)]
现在,我需要调用 geopy.distance
的 great_circle()
,这样我应该将所有元组作为参数传递。
像这样-
great_circle((18.521428, 73.8544541), (28.6517178, 77.2219388), (18.9387711, 72.8353355))
但无法这样做,因为函数 great_circle(*args, **kwargs)
需要单个元组而不是元组列表。它引发了以下异常:-
TypeError: unsupported operand type(s) for +=: 'int' and 'list'
那么,你能建议一下怎么做吗?
您可以在一行中完成,只要您确定您的 list
包含 完全 所需的输入量。只是做:
great_circle(*mylist)
*
运算符将从列表中提取您的数据,这将等同于您想要的。
希望对您有所帮助。
我有一个动态创建的元组列表,因此它的长度可以变化。此列表的一个示例是:-
mylist=[(18.521428, 73.8544541), (28.6517178, 77.2219388), (18.9387711, 72.8353355)]
现在,我需要调用 geopy.distance
的 great_circle()
,这样我应该将所有元组作为参数传递。
像这样-
great_circle((18.521428, 73.8544541), (28.6517178, 77.2219388), (18.9387711, 72.8353355))
但无法这样做,因为函数 great_circle(*args, **kwargs)
需要单个元组而不是元组列表。它引发了以下异常:-
TypeError: unsupported operand type(s) for +=: 'int' and 'list'
那么,你能建议一下怎么做吗?
您可以在一行中完成,只要您确定您的 list
包含 完全 所需的输入量。只是做:
great_circle(*mylist)
*
运算符将从列表中提取您的数据,这将等同于您想要的。
希望对您有所帮助。