web-dev-qa-db-ja.com

タプルを解凍するPythonの方法は何ですか?

これはいです。それを行うためのよりPython的な方法は何ですか?

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])
98
user132262

通常、func(*Tuple)構文を使用できます。 Tupleの一部を渡すこともできます。これは、ここでやろうとしているように見えます。

t = (2010, 10, 2, 11, 4, 0, 2, 41, 0)
dt = datetime.datetime(*t[0:7])

これは、タプルのunpackingと呼ばれ、他の反復可能な要素(リストなど)にも使用できます。別の例を次に示します( Pythonチュートリアル から):

>>> 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]
140
Eli Bendersky
12
Charles Beattie