【发布时间】:2017-12-17 00:57:04
【问题描述】:
所以我想用 3 行输入一个输入文件。 第一行,是列表中的项目数 第二行,关于我想如何重新排列列表的索引。 (见下文了解更多信息) 第三行,数字列表本身
所以 in.txt 的第二行是重新排列列表的索引。很难解释,但这就是它的工作方式(参见 in.txt 以供参考) 第一个数字保持不变,第二个数字变为第三个,第五个数字变为第二个,第四个变为第五个,依此类推。
这里有一些示例输入: 在.txt
5
1 3 4 5 2
12 33 96 84 74
输出.txt
12
74
33
96
84
这是程序本身:
fin = open('in.txt','r') #file in
fout = open('output.txt','w') #file out
indata = fin.readlines()
cownum = int(indata[0])
print(cownum)
posmove = indata[1]
cid = indata[2]
poss=posmove.split()
ids=cid.split()
print(poss)
print("")
i=0
while i != int(cownum):
print(poss[i])
ids.insert((int(poss[i])-1), ids.pop(i))
i=i+1
print(i)
print(ids)
newids = str(ids)
fout.write(newids)
fin.close()
fout.close()
只是一些背景信息,列表中的数字有点像产品 ID
现在的问题是我重新排列了两次项目。
对不起,如果我有点不清楚(大声笑和奇怪的变量名)
【问题讨论】:
标签: python python-3.x python-2.7 list python-2.x