通过instance.cmd()调用带参数的函数

时间:2016-03-23 17:00:29

标签: python

对于一些有经验的python程序员来说,我的问题可能很容易(我不是其中之一)。

我尝试使用参数启动服务器。

目前我在做:

def startServer(host):
    host.cmd( 'python server.py &' )

有没有办法将参数传递给 server.py

2 个答案:

答案 0 :(得分:1)

def startServer(host):
    host.cmd( 'python server.py an_argument_to_server &' )

真的是你在找什么?

答案 1 :(得分:1)

为了从命令行运行python run server.py,我们可以使用subprocess模块。可以在此处找到文档:https://docs.python.org/2/library/subprocess.html

import subprocess

def startServer(host, argument):
    subprocess.call(['python', 'server.py', argument])

当您使用某个参数(例如startServer)调用an_argument_to_server函数时,它将在命令行中运行python server.py an_argument_to_server。我们不需要&字符,因为subprocess会自动在后台运行。 subprocess模块也适用于python 3.x