考慮下面的代碼:功能python列表切片真的不對稱嗎?
>>> a = [0, 1, 2]
>>> for i in range(len(a)):
>>> print a[0:i]
[]
[0]
[0, 1]
然而,當我翻轉代碼,以切片從列表中的另一端,它不再起作用:
>>> for i in range(len(a)):
>>> print a[-i:]
[0, 1, 2]
[2]
[1, 2]
只有這樣,才能使第二件作品的代碼似乎是顛倒清單,以第一種方式做,並在打印之前將每件作品顛倒過來。有一個更好的方法嗎?我有時使用這種類型的循環,我希望我的代碼儘可能乾淨。
編輯:在兩個循環中,我從左到右迭代。如果我翻轉迭代的方向以及第二個循環,它也可以工作。如果我翻轉迭代的方向,爲第一環,它也有同樣的打嗝的第二環:
>>> for i in range(len(a)):
>>> print a[i-1::-1]
[2, 1, 0]
[0]
[1, 0]
Arg - 您什麼時候出現在這裏?現在我該怎麼去FGITW什麼? (+1 btw) – mgilson 2013-03-23 23:03:52
他藏在陰影裏。 xD – TerryA 2013-03-23 23:04:04
絕對不能相信毛氈娃娃忍者.. – 2013-03-23 23:04:32