吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 587|回复: 39
收起左侧

[资源求助] 请大佬帮我做一个EXE的去重TXT文本

[复制链接]
wangsheng518 发表于 2024-6-29 23:14
200吾爱币
请大佬帮我做一个EXE的去重TXT文本

UTF-8编码2247.txt 文本
https://wwo.lanzout.com/i8Vu6232ecpe

麻烦了 一个可执行的exe去重文本。谢谢。


最佳答案

查看完整内容

[mw_shl_code=python,true]import os #----------------------------------------------------------------------------------------- #思路:考虑题目分行长度不一,只能找一个区分点来先把题目分割开。 # 题目分割点:“、\n” # 可能存在的BUG:如果题目一样,答案顺序不同,这种简单方式就无法区分出来。那就得麻烦一点了,伤脑筋,留给大佬们写吧。 #------------------------------------------------------------- ...

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

wkfy 发表于 2024-6-29 23:14
[Python] 纯文本查看 复制代码
import os
  
#-----------------------------------------------------------------------------------------
#思路:考虑题目分行长度不一,只能找一个区分点来先把题目分割开。
# 题目分割点:“、\n”
# 可能存在的BUG:如果题目一样,答案顺序不同,这种简单方式就无法区分出来。那就得麻烦一点了,伤脑筋,留给大佬们写吧。
#-----------------------------------------------------------------------------------------
  
  
def split_file(file_path):
    filetxt=[] #存放文件内容
    newlines=[]
    with open(file_path,"r",encoding="utf-8")as file:# 打开文件,文件路径自己修改,注意要\\转义
        filetxt=str(file.read()).split("、\n") #以“、\n”分割文件内容,存入列表,不然无法区分单个题目
    for i in filetxt:
        if(len(i)>10):#简单判断一下长度,不是单题目标号就处理
            newlines.append(str(i).split("无\n")[0]+"无\n") #去除因为分割留下来的题目号,只保留题目内容
    return newlines
  
# 怎么能直接给新文件名加NEW呢,据说程序员一行代码一毛钱,一瓶0.6的冰露到手了 -_!!!
def rename_file(file_path):
    file_name=os.path.splitext(os.path.basename(file_path))[0]
    file_dir=os.path.dirname(file_path)
    new_file_name=file_dir+'\\'+file_name+"_new.txt" #修改文件
    return new_file_name #返回新文件路径
  
  
  
if __name__ == '__main__':
    file_panth="C:\\Users\\wangsheng\\Desktop\\1240.txt" # 文件路径自己修改,注意要\\转义,也就是路径的\号全部打两个
    #判断文件是否存在,不存在就瞎逼逼一下抱怨抱怨
    if os.path.exists(file_panth):
        n=split_file(file_panth) # 文件路径自己修改,注意要\\转义,也就是路径的\号全部打两个
        #转换到set类型,去除filetxt重复的项
        filetxt1=set(n)
        num=1 #重新编号题号
        for i in filetxt1:
            new_file_name=rename_file(file_panth) #获取新文件名
            with open(new_file_name,"a+",encoding="utf-8")as file1: #写出文件,文件命后面加_new
                file1.write(str(num)+"、\n"+str(i))#把题目号加进来写出
                num+=1 #题目编号加1
    else:
        print("文件不存在啊- -!!")
孤狼微博 发表于 2024-6-29 23:29
孤狼微博 发表于 2024-6-29 23:45
 楼主| wangsheng518 发表于 2024-6-29 23:46
孤狼微博 发表于 2024-6-29 23:45
重复的是标题和答案一起去重吗?

嗯嗯是的
wkfy 发表于 2024-6-30 09:22
exe没有。python可以有,但是题目顺序可能有点变。
wkfy 发表于 2024-6-30 09:33
UTF-8编码2247-new.txt (144.74 KB, 下载次数: 1)

看一下这种过滤结果行不行,可以的话给你python 代码。
wkfy 发表于 2024-6-30 10:15
简单写一个python吧。当给自己练手了。
[Python] 纯文本查看 复制代码
import os

#-----------------------------------------------------------------------------------------
#思路:考虑题目分行长度不一,只能找一个区分点来先把题目分割开。
# 题目分割点:“、\n”
# 可能存在的BUG:如果题目一样,答案顺序不同,这种简单方式就无法区分出来。那就得麻烦一点了,伤脑筋,留给大佬们写吧。
#-----------------------------------------------------------------------------------------


def split_file(file_path):
    filetxt=[] #存放文件内容
    newlines=[]
    with open(file_path,"r",encoding="utf-8")as file:# 打开文件,文件路径自己修改,注意要\\转义
        filetxt=str(file.read()).split("、\n") #以“、\n”分割文件内容,存入列表,不然无法区分单个题目
    for i in filetxt:
        if(len(i)>10):#简单判断一下长度,不是单题目标号就处理
            newlines.append(str(i).split("无\n")[0]+"无\n") #去除因为分割留下来的题目号,只保留题目内容
    return newlines

# 怎么能直接给新文件名加NEW呢,据说程序员一行代码一毛钱,一瓶0.6的冰露到手了 -_!!!
def rename_file(file_path):
    file_name=os.path.basename(file_path) #获取文件名
    new_file_name=file_name+"_new.txt" #修改文件名
    new_file_path=os.path.join(os.path.dirname(file_path),new_file_name) #修改文件路径
    os.rename(file_path,new_file_path) #重命名文件
    return new_file_path #返回新文件路径



if __name__ == '__main__':
    file_panth="D:\\UTF-8编码2247.txt" # 文件路径自己修改,注意要\\转义,也就是路径的\号全部打两个
    #判断文件是否存在,不存在就瞎逼逼一下抱怨抱怨
    if os.path.exists(file_panth):
        n=split_file("D:\\UTF-8编码2247.txt") # 文件路径自己修改,注意要\\转义,也就是路径的\号全部打两个
        #转换到set类型,去除filetxt重复的项
        filetxt1=set(n)
        num=1 #重新编号题号
        for i in filetxt1:
            with open(rename_file(file_panth),"a+",encoding="utf-8")as file1: #写出文件,文件命后面加_new
                file1.write(str(num)+"、\n"+str(i))#把题目号加进来写出
                num+=1 #题目编号加1
    else:
        print("文件不存在啊- -!!")
 楼主| wangsheng518 发表于 2024-6-30 14:10
wkfy 发表于 2024-6-30 09:33
看一下这种过滤结果行不行,可以的话给你python 代码。

请问可以帮我转换exe 电脑打开直接运行就可以吗 还是只能下载python的软件 才可以运行了
jyjjf 发表于 2024-6-30 14:26
整理题库没有统一的方法的,除非都是一样的题库格式
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-12-13 16:56

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表