我一直在考慮,由別人,那我無法理解的代碼行。理解的代碼行
inputString = "[1,2,3,4,5,6,7,8,9,10,11,12]"
a = inputString[1:-1].split(',')
z = zip(a[::2],a[1::2]) # this line
print a
print z
我明白split
函數以及它是如何工作的。我甚至明白zip
函數。我不明白的是a[::2],a(1::2)
正在做什麼。我已經嘗試修改這些代碼並獲得不同的結果,但沒有什麼能夠讓我理解修改代碼的功能。我對Python很新,可以使用一些幫助。
典型,未修改從代碼的結果是這樣的:
['1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12']
[('1', '2'), ('3', '4'), ('5', '6'), ('7', '8'), ('9', '10'), ('11', '12')]
我想獲得的「a」到分成4組而不是兩個組的結果,即:
('1','2','3','4'),('5','6','7','8')....etc.
請參閱這裏解釋了一大步:http://stackoverflow.com/questions/509211/蟒蛇片,符號 –
你應該看看到['itertools'配方'grouper'(https://docs.python.org/2/library/itertools.html#recipes)... – jonrsharpe