目前是python和自学的新手,如果示例错误/基本,敬请见谅。 随时进行改进:)
基本上,文件MEs.txt包含IP地址列表,一旦它ping通IP地址并得到响应,我就试图获取打印输出'ME(行号)已连接/断开)。
有帮助吗?
os.remove("EquipmentCheck.txt")
file = open("MEs.txt", "r+")
with open("MEs.txt", "r") as file:
for line in file:
response = os.system("ping " + line)
if response == 0:
with open("EquipmentCheck.txt", "a") as file:
file.write("ME is connected" "\n")
else:
with open("EquipmentCheck.txt", "a") as file:
file.write("ME is disconnected" "\n")```
答案 0 :(得分:4)
一种选择是使用enumerate
函数。
for index, line in enumerate(file):
line_number = index + 1
...
显然有一个开始参数。因此,您可以这样做:
for line_number, line in enumerate(file, start=1):
...
答案 1 :(得分:0)
尝试使用enumerate()
枚举(可迭代,开始= 0)
参数:
可迭代:支持迭代的任何对象
开始:索引值 从中启动计数器,默认情况下为0
with open("MEs.txt") as fp:
for i, line in enumerate(fp):
print("%d, %s"%(i, line))
答案 2 :(得分:0)
您有2个名为file的变量,它们正在破坏代码