Python:os.system(ping)参数不起作用?

2024-05-20 22:36:13 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图使用os.system(ping)和一个变量来创建一个def语句,但它不想接受该变量:

import os

def myping(myip):
    print(myip)
    ip1 = os.system("ping -c 1 myip")
    print(ip1)
myping("127.0.0.1")

这将返回512的代码(失败,而不是0,这是成功),然后返回“ping:未知主机myip”。根据我在os.system语句中格式化myip的方式,我还可以得到256,但有另一个错误。我试过各种格式,包括引号、圆括号、百分号等等,我只是不知道我做错了什么。

我可以说我让它认为我想扫描myip(文字字符串)。我这里有什么语法错误?谢谢。

顺便说一下,def语句中的print(myip)确实给出了127.0.0.1。


Tags: 代码importosdef格式错误方式语句
1条回答
网友
1楼 · 发布于 2024-05-20 22:36:13

您可能希望将myip的值放入os.system的参数中:

ip1 = os.system('ping -c 1 {}'.format(myip))

或(旧式,在Python3.1中已弃用):

ip1 = os.system("ping -c 1 %s" % myip)

相关问题 更多 >