[英]Python: Read line from File, check if in other file, if it is print line to output file
我有一個包含 ID 列表的文本文件。 我想遍歷該文件的行,檢查 ID 是否出現在第二個文件“extra_lines.txt”的行中。 如果 ID 出現在第二個文件的一行中,我想將整行打印到 output.txt。 但是,僅打印包含最終 ID 的行。 我究竟做錯了什么?
outfile = open("output.txt", "a")
def checkLine(ID):
with open("extra_lines.txt") as f:
for line in f:
if ID in line:
outfile.write(line)
for ID in open("IDs.txt", "r"):
checkLine(ID)
我的猜測是您的“ID”字符串包含除最后一行之外的每一行的換行符。 結果是
if ID in line:
失敗,因為“行”不包含后跟換行符的 ID。
有關如何在沒有換行符的情況下讀取每一行的信息,請參閱讀取沒有換行符的文件。
ID.strip("\n")
對我有用(Python 3.5)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.