正确的方法在Python列表上执行多个顺序操作



我必须通过python列表执行多个顺序操作,该列表存储文本行以清洁数据。当前(如您所见),每次执行每个操作时,我都会创建一个新变量。我的问题是:是否有一种更好的(更酸的)方式来执行所有这些操作,而无需每次更改数据时创建新变量?

这只是我目前正在做的一个示例:

corpus_1 = [strip_non_alphanum(line) for line in corpus]
corpus_2 = [line for line in corpus_1 if line.rstrip()]
corpus_3 = [strip_multiple_whitespaces(line) for line in corpus_2]
train_data_1 = [line.split(' ') for line in corpus_3]
train_data = [list(filter(None, line)) for line in train_data_1]

正如评论中已经提到的其他人一样,您可以按照以下所有这些连续操作进行:

train_data = []
for line in corpus:
    line = strip_non_alphanum(line)
    if line.rstrip():
        elem = list(filter(None,strip_multiple_whitespaces(line).split()))
        train_data.append(elem)

相关内容

最新更新