有没有办法使用“splat”运算符(例如
用例:我想将一些输入分成一个数字,一个列表,另一个数字和另一个列表。
我的输入看起来像这样:
a,*rest = somelist
)以某种方式消耗一定数量的项?用例:我想将一些输入分成一个数字,一个列表,另一个数字和另一个列表。
我的输入看起来像这样:
5
1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16
5
1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16
我希望有以下变量名称:first_num
、first_arrangement
、second_num
、second_arrangement
,并且它们与以下条件相关:
first_num == 5
first_arrangement == [[1, 2, 3, 4], [5, 6, 7, 8], ...]
等等。
为了做到这一点,从产生行的可迭代对象中消耗一定数量的项将非常有用。像这样的东西作为中间步骤将是理想的:
first_num, *[4]first_arrangement, second_num, *[4]second_arrangement = lines
解决这个问题的正常/规范/Pythonic方式是什么?
first_arrangement = args[1:5]
...? - Julien Spronck*
来完成这个操作。 - MJeffryes