Deleting a specific word from a file in python(在python中从文件中删除特定单词)
本文介绍了在python中从文件中删除特定单词的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我是Python的新手,刚刚开始导入文本文件。我有一个包含单词列表的文本文件,我希望能够输入一个单词,并将此单词从文本文件中删除。有人能解释一下我是如何做到这一点的吗?
text_file=open('FILE.txt', 'r')
ListText = text_file.read().split(',')
DeletedWord=input('Enter the word you would like to delete:')
NewList=(ListText.remove(DeletedWord))
到目前为止,我有一个将文件导入到列表中的方法,然后我可以从新列表中删除单词,但也可以从文本文件中删除该单词。
推荐答案
以下是我推荐的内容,因为它相当简单,而且我认为您不关心性能。:
f = open("file.txt",'r')
lines = f.readlines()
f.close()
excludedWord = "whatever you want to get rid of"
newLines = []
for line in lines:
newLines.append(' '.join([word for word in line.split() if word != excludedWord]))
f = open("file.txt", 'w')
for line in lines:
f.write("{}
".format(line))
f.close()
这允许一行上有多个单词,但如果每行只有一个单词也同样有效
回答更新的问题:
您不能直接编辑文件(或者至少我不知道如何编辑),而必须获取Python中的所有内容,对其进行编辑,然后使用更改后的内容重写文件
另外需要注意的是,lst.remove(item)
将抛出lst
中的item
的第一个实例,并且只抛出第一个实例。因此,item
的第二个实例将不受.remove()
的影响。这就是我的解决方案使用列表理解从列表中排除excludedWord
的所有实例的原因。如果您确实想使用.remove()
,可以这样做:
while excludedWord in lst:
lst.remove(excludedWord)
但我不鼓励这样做,而是支持同等的列表理解
这篇关于在python中从文件中删除特定单词的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
沃梦达教程
本文标题为:在python中从文件中删除特定单词
基础教程推荐
猜你喜欢
- 将 YAML 文件转换为 python dict 2022-01-01
- 如何在Python中绘制多元函数? 2022-01-01
- 使 Python 脚本在 Windows 上运行而不指定“.py";延期 2022-01-01
- 合并具有多索引的两个数据帧 2022-01-01
- 症状类型错误:无法确定关系的真值 2022-01-01
- Python 的 List 是如何实现的? 2022-01-01
- 使用 Google App Engine (Python) 将文件上传到 Google Cloud Storage 2022-01-01
- 使用Python匹配Stata加权xtil命令的确定方法? 2022-01-01
- 哪些 Python 包提供独立的事件系统? 2022-01-01
- 如何在 Python 中检测文件是否为二进制(非文本)文 2022-01-01