【发布时间】:2015-04-23 11:59:54
【问题描述】:
如果我有一个包含五个项目的列表,并且我想获得该列表的每个排列,如何保持第一个和最后一个项目相同?
就像这样,包含五个项目的列表将产生一个列表的 120 个排列,其中该列表中将有六个项目,但第一个和最后一个项目将是相同的。以下是我到目前为止所做的。任何帮助将不胜感激。
from itertools import permutations
airportlist = ["airport1", "airport2", "airport3", "airport4", "airport5"]
permlist = permutations(airportlist, 5)
print(permlist)
print(list(permlist))
for i in list(permlist):
newlist = (list(i))
print(newlist)# getting e.g. ['airport1', 'airport5', 'airport2', 'airport4', 'airport3']
print(list(i)[0]) # getting (to continue above example) airport1
newerlist = (list(i).append((list(i)[0])))
print(newerlist)#getting None but want ['airport1', 'airport5', 'airport2', 'airport4', 'airport3', 'airport1']
这可能吗?
【问题讨论】: