我有一个文本文件,Input.txt
Input.txt看起来像这样:
word1 word2 word3 word4 "D:\path\string" word5
单词随意改变一行到下一行。我有一个列表(让我们称之为List1)有很多不同的字符串,我需要为Input.txt中的每一行创建一个新列表,其中“string”部分与List1中的任何一个元素相同。
我最接近的是这样做:
strings = List1
with open("Input.txt", 'r') as file:
for line in file:
if any(s in line for s in strings):
print(line)
但是这只打印出我想要的线条(如果我复制它打印的内容,它没有正确格式化(例如,它只是将所有行打印为一个字符串而不是按行分隔) - 我可以格式化它正确,但我想找到最有效的方法来做到这一点)。
简而言之,制作包含List1字符串的每一行的列表(比如说List2)最有效和惯用的方法是什么,这样如果我将List2写入另一个文本文件,List2就会有一个元素每行?
答案 0 :(得分:0)
试试这个
strings = []
with open("Input.txt", 'r') as f:
lines = f.readlines()
print lines
如果不行则试试这个
strings = []
with open("Input.txt", 'r') as f:
lines = f.read().split(' ')
print lines