【发布时间】:2019-12-18 14:05:38
【问题描述】:
我需要比较两种不同格式的 CSV 文件,第一个文件包含主机名和 IP 地址,第二个文件包含主机名、IP 地址、操作系统类型和正常运行时间。 目标是从第一个文件中获取主机名,并将其与第二个文件中的主机名进行比较,如果可以,代码会为我提供操作系统类型和正常运行时间。 这是我的第一次代码测试。
import sys
# f = sys.stdin
# If you need to open a file instead:
f_vm_srv = open('serveurs.csv')
f_srv_list = open('fqdn-ip.txt')
for line1 in f_srv_list:
hostname=line1.strip().split(";")
for line in f_vm_srv:
fields = line.strip().split(";")
if fields[0] == hostname[0]:
print (fields[12])
f_vm_srv.close()
f_srv_list.close()
但是这段代码只给了我第一行结果。
【问题讨论】:
-
首先至少为内部循环读取所有行,因为当它到达文件末尾时它不会再次从文件中读取行(这意味着当你第二次运行内部循环时)