Python 字数列表,带有额外的

Python 字数列表,带有额外的,python,Python,我不熟悉编程,并试图创建一个可以读取文本文件(来自《白鲸记》的一段)的程序,去掉任何不属于传统单词的标记,例如“!”,“等等“,”,“,”,“?”,等等,使单词小写,删除另一个名为“NewSet”的文本文件中的任何单词,然后打印所有剩余单词及其词数。我已经能够获得词数,但在删除这些标记和删除单独列表中的任何单词时遇到困难。如果需要更多信息,请请告诉我,我可以用它编辑这篇文章。谢谢!:) 我不确定这是否回答了你的问题…再列一个列表来添加未删除的单词怎么样 您可以编写。(您也可以使用“with…as

我不熟悉编程,并试图创建一个可以读取文本文件(来自《白鲸记》的一段)的程序,去掉任何不属于传统单词的标记,例如“!”,“等等“,”,“,”,“?”,等等,使单词小写,删除另一个名为“NewSet”的文本文件中的任何单词,然后打印所有剩余单词及其词数。我已经能够获得词数,但在删除这些标记和删除单独列表中的任何单词时遇到困难。如果需要更多信息,请请告诉我,我可以用它编辑这篇文章。谢谢!:)


我不确定这是否回答了你的问题…再列一个列表来添加未删除的单词怎么样

您可以编写。(您也可以使用“with…as”样式打开文件。)


希望有帮助。

变量和函数名应遵循带有下划线的
小写形式。使用上下文管理器处理文件对象会更好。此外,您可以一遍又一遍地读取整个文件。
file=open("Moby Dick.txt","r+")
wordcount={}
for word in file.read().split():
    if word not in NewSet:
        for word in file.read().split():
            if word not in wordcount:
                wordcount[word] = 1
            else:
                wordcount[word] += 1

for k,v in wordcount.items():
    print(k,v)
file.close();
file=open("Moby Dick.txt","r+")
wordcount={}
out = []
for word in file.read().split():
    if word not in NewSet:
        out.append(word)
        for word in file.read().split():
            if word not in wordcount:
                wordcount[word] = 1
            else:
                wordcount[word] += 1

for k,v in wordcount.items():
    print(k,v)
file.close()
print(out)
with open("new_text.txt", "w") as f:
    f.write(out)