What is the pythonic way to unpack tuples?
本问题已经有最佳答案,请猛点这里访问。
这太难看了。有什么比Python更刺激的方法?
1 2 3 4 | import datetime t= (2010, 10, 2, 11, 4, 0, 2, 41, 0) dt = datetime.datetime(t[0], t[1], t[2], t[3], t[4], t[5], t[6]) |
通常,您可以使用
1 2 | t = (2010, 10, 2, 11, 4, 0, 2, 41, 0) dt = datetime.datetime(*t[0:7]) |
这称为解包元组,也可以用于其他iterable(如列表)。下面是另一个示例(来自Python教程):
1 2 3 4 5 | >>> 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] |
请参阅https://docs.python.org/2/tutorial/controlflow.html解包参数列表
1 | dt = datetime.datetime(*t[:7]) |