如何在python中逐行读取文件并在每行中获取字符串

如何在python中逐行读取文件并在每行中获取字符串,python,python-2.7,Python,Python 2.7,我正在尝试读取文本文件并打印文件中的字符串 文本文件(Test.txt): 以下是python代码: file = open('Test.txt','r') text = file.read() output = text.split('START:')[1].split("\n")[0] print out 输出: XYZ XYZ PQR ABC 但是我想读取文件的每一行,并将值“XYZ,PQR,ABC”打印为输出。我的代码只打印“XYZ”。我尝试了while循环,但没有得到预期的

我正在尝试读取文本文件并打印文件中的字符串

文本文件(Test.txt):

以下是python代码:

file = open('Test.txt','r')
text = file.read()
output = text.split('START:')[1].split("\n")[0]
print out
输出:

XYZ
 XYZ
 PQR
 ABC
但是我想读取文件的每一行,并将值“XYZ,PQR,ABC”打印为输出。我的代码只打印“XYZ”。我尝试了while循环,但没有得到预期的输出


提前感谢

您需要查看所有出现的
START:

解决方案:

with open('Test.txt', 'r') as fp:
    for line in fp:
        if line.startswith('START:'):
           print(line.strip().split('START:')[1])
输出:

XYZ
 XYZ
 PQR
 ABC

您需要查找所有出现的
START:

解决方案:

with open('Test.txt', 'r') as fp:
    for line in fp:
        if line.startswith('START:'):
           print(line.strip().split('START:')[1])
输出:

XYZ
 XYZ
 PQR
 ABC

@如果我想要输出“XYZ:PASS”,我应该怎么做?我是否应该使用split('PASS')[0]?将打印行替换为
print({0}:PASS.format(line.strip().split('START:')[1]))
,但在本例中PASS是常量,对..如果失败:True。它应该打印失败,但是上面的代码将打印所有案例的PASS@ssudake如果我想输出“XYZ:PASS”,我应该怎么做?我是否应该使用split('PASS')[0]?将打印行替换为
print({0}:PASS.format(line.strip().split('START:')[1]))
,但在本例中PASS是常量,对..如果失败:True。它应该打印失败,但上面的代码将打印所有情况下的通过