Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/340.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用python ping并保存到文件_Python_Csv - Fatal编程技术网

使用python ping并保存到文件

使用python ping并保存到文件,python,csv,Python,Csv,蟒蛇 下面是ping主机并根据结果创建CSV文件的代码 import os for i in range (0,255): for j in range(1,254): hostname = "10.222.{0}.{1}".format(i,j) response = os.system ("ping -n 1 " + hostname) if response == 0: fp = open("C:\\Users

蟒蛇 下面是ping主机并根据结果创建CSV文件的代码

import os
for i in range (0,255):
    for j in range(1,254):
        hostname = "10.222.{0}.{1}".format(i,j)
        response = os.system ("ping -n 1 " + hostname)
        if response == 0:
            fp = open("C:\\Users\\anudeepa\\Desktop\\hostname.csv", 'w')
            fp.writelines(hostname + "host up\n")

        else:
            fp = open("C:\\Users\\anudeepa\\Desktop\\hostname.csv", 'w')
            fp.write(hostname + "host dead\n")
此代码允许我ping主机,但在将结果写入CSV时,它会覆盖以前写入的结果,并且只写入倒数第二个或非最短的结果。

更改这两个结果

fp=open(“C:\\Users\\a\\Desktop\\hostname.csv”,“w”)

fp=open(“C:\\Users\\a\\Desktop\\hostname.csv”,“a”)

以便在追加模式下打开文件

您还可以通过将
一起使用来改进代码,这样您就不会每次迭代都打开该文件:

import os

with open("C:\\Users\\anudeepa\\Desktop\\hostname.csv", 'a') as fp:
    for i in range (0,255):
        for j in range(1,254):
            hostname = "10.222.{0}.{1}".format(i,j)
            response = os.system ("ping -n 1 " + hostname)
            if response == 0:
                fp.writelines(hostname + "host up\n")
            else:
                fp.write(hostname + "host dead\n")

这还有一个好处,就是在脚本结束时关闭文件。

Hi Deepspace,通过此更正修复了代码,在“导入操作系统”后添加了下面的行,全局打开了文件。fp=open(r“C:\Users\anudepa\Desktop\Work\Bala\xyz.csv”,“w”)`