Python:具有多个列表的变量连接成一个列表

时间:2017-05-23 18:41:16

标签: python

我对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']

有人会知道如何解决这个问题吗?提前谢谢!

1 个答案:

答案 0 :(得分:0)

最后一次拆分是多余的。而且,通过列表理解可以更加优雅地完成整个事情:

z = [w.replace(',.', '') for w in s]
print(z)