我正在阅读一个标题为“sample.txt”的文本文件,其中包含2列数据,如下所示。
ID类型
1 A
2 B
3 A
4 C
5 A
现在,
1)我想只返回'Type'列值为'A'和
的行2)我想只返回'Type'列值不是'A'的行。
任何人都可以帮我理解如何在python中完成这项工作吗?感谢。
答案 0 :(得分:0)
你没有非常努力地尝试,或者至少没有试图破解这一点。
def filterFileLines(filterFunction):
with open("sample.txt") as file:
# discard_first_line
file.readline()
for line in file:
id, type = line.strip().split(' ')
if filterFunction(id, type):
print (line, end='')
print('')
def isTypeA(a, b):
return b == 'A'
def isNotTypeA(a, b):
return not isTypeA(a, b)
if __name__ == '__main__':
print('Lines with type == "A"')
filterFileLines(isTypeA)
print('lines with type not "A"')
filterFileLines(isNotTypeA)