如何使用Python将for循环的结果转储到.txt文件中?

时间:2018-08-21 14:35:09

标签: python

我正在使用此python脚本。我希望它将所有活动的主机转储到文本文件中,并丢弃所有不响应ping的主机。目前我有这部分。

#!/usr/bin/python2
import subprocess
import sys

ip = "10.11.1."

for sub in range (0,255):
    sweep = subprocess.Popen("ping -c 1 "+ ip+str(sub), shell=True, 
    stderr=subprocess.PIPE)
    out = sweep.stderr.read(1)
    sys.stdout.write(out)

我如何添加将相关信息转储到.txt文件中的部分?

2 个答案:

答案 0 :(得分:0)

将内容保存到文件101:

with open(<path>, 'w') as f:
    f.write(<content>)

注意:open中的第二个参数表示我们打开要写入的文件。如果要附加文件,则必须使用模式“ a”。

答案 1 :(得分:0)

您要询问如何将输出发送到文件吗?

with open('myfile.txt', 'w') as outfile:
    for sub in range (0,255):
        sweep = subprocess.Popen("ping -c 1 "+ ip+str(sub), shell=True, 
                                 stderr=subprocess.PIPE)
        outfile.write(sweep.stderr.read(1))