请将结果添加到列表中,输出到device_scan.txt文本中
时间: 2024-09-17 07:00:39 浏览: 32
为了将每个设备的ping结果添加到列表中并将它们写入`device_scan.txt`文件,你可以稍微修改一下`main()`函数中的代码。下面是修改后的示例:
```python
def append_to_list_and_write_to_file(results, filename):
with open(filename, 'a') as file:
for result in results:
file.write(result + '\n')
results = [] # 初始化一个空列表用于存储结果
def main():
with open('device_info.txt', 'r') as file:
for line in file:
ip, device_name = parse_line(line)
result = ping_device(ip, device_name)
results.append(result) # 将ping结果添加到结果列表中
# 执行完毕后,将结果写入device_scan.txt文件
append_to_list_and_write_to_file(results, 'device_scan.txt')
print("\n设备扫描完成,结果已保存在device_scan.txt中")
# 原有的 main() 函数不变,这里不再需要if __name__ == "__main__":
main()
```
在这个版本中,我们新增了一个`append_to_list_and_write_to_file()`函数,它接受一个包含结果的列表和一个文件名作为参数。遍历完所有设备后,将`results`列表的内容追加到`device_scan.txt`文件中,每个结果一行。这样,最终的结果会保存在一个单独的文件里,方便后续查看和管理。