脚本从文件中删除所有重复行的出现,并保持原始顺序(perl + python + lua)

问题描述 投票:-2回答:1

正如标题所说,我需要在perl中创建一个脚本,在python中创建一个脚本,在lua中创建一个脚本,以删除重复行的所有出现(甚至可以是单行命令)。例如,假设文件有以下几行(我不知道文件到底有什么,需要一个通用命令来完成,这只是一个例子):

apple
orange
banana
banana
berry
cherry
orange
melon

输出应该像:

apple
berry
cherry
melon

要注意的另一件事是,我需要文件具有与开始时相同的行顺序。我设法使用awksed拉出多个命令,但找不到与删除python /lua/ perl中的所有出现的事件>>相关的任何信息。

正如标题所说,我需要在perl中创建一个脚本,在python中创建一个脚本,在lua中创建一个脚本,以删除重复行的所有出现(甚至可以是单行命令)。例如,假设文件具有...

python perl lua duplicates
1个回答
1
投票

在python中,您可以只使用dict.fromkeys()

file = open("myfile.txt", "r")
mylist = []
for line in file:
   mylist.append(line)

no_duplicates = list(dict.fromkeys(mylist))
© www.soinside.com 2019 - 2024. All rights reserved.