我对Python比较陌生,我正在研究一个问题,我想创建一个包含文本文件中没有句号和逗号的每个单词的变量。我有变量,每个单词都被正确编辑,但是变量打印为每个单词的列表(在这种情况下,这个变量包含280个列表,每个列表都有一个单词)。
我正在使用的代码是这样的:
import string
with open("pythonhow1.txt",'r') as file:
content=file.read()
s=content.split()
for words in s:
v=string.replace(words,',','')
w=string.replace(v,'.','')
z=w.split()
print(z)
变量s
在编辑之前为文本文件中的每个单词提供一个列表,for循环删除'.'
和','
标记。但是当我打印z
时,我得到的结果如下:
['Aenean']
['commodo']
['ligula']
['eget']
['dolor']
['Aenean']
['massa']
其中每个单词都是自己的列表,存储在变量z
中。或者,我希望z
用每个单词打印1个列表,看起来像这样:
['Aenean','commodo','ligula','eget','dolor','Aenean','massa']
我已尝试使用itertools
,因为其他一些帖子已经建议,但是这会因为将每个字母分成字符串而使问题变得更糟,看起来像这样:['A','e','n','e','a','n']
有人会知道如何解决这个问题吗?提前谢谢!
答案 0 :(得分:0)
最后一次拆分是多余的。而且,通过列表理解可以更加优雅地完成整个事情:
z = [w.replace(',.', '') for w in s]
print(z)