gpt4 book ai didi

python - 如何删除 .txt 文件中的重复项

转载 作者:行者123 更新时间:2023-12-04 08:52:11 29 4
gpt4 key购买 nike

我有一个包含以下条目的 .txt 文件:-

Apples  51824
Oranges 131236
Peaches 6564
Apples 5879
Peaches 69878
我试图从该文件中删除整行( 当发现重复条目​​时 ),只要该行中有一个单词(比如 Apples)匹配(请记住,具有最高值的条目 保持不变) )。
我目前所做的:-
1. Open the file in Excel.
2. Go to Data --> Remove Duplicates
根据我的说法,这种方法的问题在于我不确定最终结果是否始终为我提供具有最高值的数据。
那么,如何以编程方式(python 中的 ,最好是 )完成?

最佳答案

这里有两个解决方案,一个在 Python 中,另一个在 Nodejs 中,不使用第三方库:
Python:

import re
import json

with open('data.txt', 'r') as file:
lines = file.read()

lines = lines.split('\n')
fruit = {}

for line in lines:
key, value = re.split(r'\s{4}', line)
if (key not in fruit or int(fruit[key]) < int(value)):
fruit[key] = value


fruit = json.dumps(fruit)
fruit = re.sub(r'["{}:]', '', fruit)
fruit = re.sub(r', ', '\n', fruit)

with open('fruits.txt', 'w') as file:
file.write(fruit)
节点:
import fs from 'fs'

const file = fs.readFileSync('data.txt', 'utf8');
const lines = file.split('\n');
let fruit = {}

for (const line of lines) {
const [key, value] = line.split(/\s{4}/)
!fruit[key] || +fruit[key] < +value ? fruit[key] = value : null
}

fruit = JSON.stringify(fruit)
.replace(/["{}]/g, '')
.replace(/:/g, ' ')
.replace(/,/g, '\n')

fs.writeFileSync('fruits.txt', fruit)

关于python - 如何删除 .txt 文件中的重复项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64047275/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com