現(xiàn)在AI發(fā)展迅速,我們做網(wǎng)站也要利用好這個工具。今天在訓(xùn)練AI的時候,我把一個TXT文件到知識庫時,一直上傳不了,只好用python程序平分分成了幾份,但是上傳文件到后面還是有一部分失敗。那就只能把后面的再分成更小的文件上傳,于是就要找到已經(jīng)上傳的給刪掉。實現(xiàn)代碼如下:
def delete_before_first_occurrence(input_file, output_file, sentence): with open(input_file, 'r', encoding='utf-8') as file: content = file.read() # 找到第一次出現(xiàn)句子的位置 index = content.find(sentence) if index != -1: # 刪除句子之前的所有內(nèi)容 content = content[index:] else: print(f"句子 '{sentence}' 未在文件中找到。") return # 將修改后的內(nèi)容寫回文件 with open(output_file, 'w', encoding='utf-8') as file: file.write(content) # 使用函數(shù) input_txt_file = '高中資料.txt' # 輸入文件名 output_txt_file = '高中資料n.txt' # 輸出文件名,也可以是原文件名以覆蓋原文件 sentence_to_find = '二是考慮到第一志愿考生入學(xué)后專業(yè)思想穩(wěn)定' delete_before_first_occurrence(input_txt_file, output_txt_file, sentence_to_find)
請注意以下幾點:
你需要替換input_txt_file和output_txt_file為你實際的文件名。如果你想覆蓋原文件,可以將output_txt_file設(shè)置為和input_txt_file相同的值。
sentence_to_find應(yīng)該設(shè)置為你想要找到并刪除其前所有內(nèi)容的句子。
這個腳本假設(shè)你的文本文件是UTF-8編碼的。如果文件的編碼不同,請相應(yīng)地修改encoding參數(shù)。
find()方法返回的是子字符串第一次出現(xiàn)的索引位置,如果沒有找到則返回-1。如果找到,我們就從該位置開始保留文本內(nèi)容。
這個腳本不會保留句子之前可能出現(xiàn)的任何換行符或其他空白字符。如果需要保留,可以在content[index:]之后添加適當(dāng)?shù)倪壿媮硖幚磉@些字符。
在運行此腳本之前,請確保你有文件的備份,以防萬一發(fā)生意外情況導(dǎo)致數(shù)據(jù)丟失。
未經(jīng)允許不得轉(zhuǎn)載:445IT之家 » python程序?qū)崿F(xiàn):刪除指定句子前所有信息