Python 将用户设置的变量作为os.system()命令的参数传递

Python 将用户设置的变量作为os.system()命令的参数传递,python,Python,好的,基本上我是Python新手,但是,我想为我在工作中使用的所有基本工具制作一个简单的菜单系统。到目前为止,我的代码如下: import os def main(): print "Main Menu.\n" print "1. Ping yourself.\n" print "2. Ping someone else.\n" opt = raw_input ("Please enter a number:- ") if opt == "1":

好的,基本上我是Python新手,但是,我想为我在工作中使用的所有基本工具制作一个简单的菜单系统。到目前为止,我的代码如下:

import os
def main():
    print "Main Menu.\n"
    print "1. Ping yourself.\n"
    print "2. Ping someone else.\n"
    opt = raw_input ("Please enter a number:- ")
    if opt == "1":
            os.system('ping 127.0.0.1')
    if opt == "2":
            ip = raw_input ("Please enter IP:- ")
            os.system('ping'.ip)

main()
现在,一切正常,但我似乎被困在这条线上:

os.system('ping'.ip)
因为我想在命令中使用第10行的变量。希望这是一个简单的解决办法

谢谢


罗斯。

您需要在命令和参数之间留一个空格。

您需要在命令和参数之间留一个空格。

您需要一个空格,字符串连接运算符是
+
,而不是

os.system("ping " + ip)
您还可以使用字符串格式:

os.system("ping %s" % ip)

您需要一个空格,字符串连接运算符是
+
,而不是

os.system("ping " + ip)
您还可以使用字符串格式:

os.system("ping %s" % ip)

一旦它正常工作,如果用户输入:

127.0.0.1; rm -rf /

一旦它正常工作,如果用户输入:

127.0.0.1; rm -rf /