Python: unpack to unknown number of variables?

时光怂恿深爱的人放手 提交于 2019-12-01 03:35:35

Unpack the tuple to a list?

l = list(t)

You can use the asterisk to unpack a variable length. For instance:

foo, bar, *other = funct()

This should put the first item into foo, the second into bar, and all the rest into other.

Update: I forgot to mention that this is Python 3.0 compatible only.

Do you mean you want to create variables on the fly? How will your program know how to reference them, if they're dynamically created?

Tuples have lengths, just like lists. It's perfectly permissable to do something like:

total_columns = len(the_tuple)

You can also convert a tuple to a list, though there's no benefit to doing so unless you want to start modifying the results. (Tuples can't be modified; lists can.) But, anyway, converting a tuple to a list is trivial:

my_list = list(the_tuple)

There are ways to create variables on the fly (e.g., with eval), but again, how would you know how to refer to them?

I think you should clarify exactly what you're trying to do here.

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!