我有一个列表,我想要切片,反转该切片并将每个项目附加到另一个列表的末尾。以下是我想到的选项(虽然如果你有其他人请分享),哪些是最pythonic?
# Option 1
tmp = color[-bits:]
tmp.reverse()
my_list.extend(tmp)
# Option 2
my_list.extend(list(reversed(color[-bits:])))
# Option 3
my_list.extend((color[-bits:])[::-1])
答案 0 :(得分:3)
我喜欢
my_list.extend(reversed(color[-bits:]))
它解释了你在做什么(通过反向另一个列表的切片来扩展列表)并且也很短。
和强制性的itertools解决方案
my_list.extend( itertools.islice( reversed(color), 0, bits))
答案 1 :(得分:0)
my_list.extend(color[:-(bits + 1):-1])
答案 2 :(得分:0)
对于选项#2,您可以切断对list
的呼叫。您也可以使用+=
代替extend
,如下所示:
my_list += reversed(color[-bits:])