Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/317.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 子流程运行bokeh服务器时,是否可以访问给定给它的参数?_Python_Subprocess_Bokeh_Argv - Fatal编程技术网

Python 子流程运行bokeh服务器时,是否可以访问给定给它的参数?

Python 子流程运行bokeh服务器时,是否可以访问给定给它的参数?,python,subprocess,bokeh,argv,Python,Subprocess,Bokeh,Argv,我有一个文件script.py,其中的代码打开一个bokeh服务器,如下所示: def start_bokeh_server(): subprocess.Popen( ["bokeh", "serve", "--show", "app.py", "--port", port, "--args", args])

我有一个文件
script.py
,其中的代码打开一个
bokeh
服务器,如下所示:

def start_bokeh_server():
   subprocess.Popen(
       ["bokeh", "serve",
        "--show", "app.py",
        "--port", port,
        "--args", args])
app.py
中,我想阅读
args

在文档中,它表示可以使用
sys.argv
访问bokeh应用程序中的
args
内容。 但是,使用
子流程
sys.argv
只返回到
script.py
的args,即只返回到它的路径

是否可以在应用程序内查看子流程bokeh调用的参数


非常感谢

以下是我用作
app.py
的内容,仅用于读取输入参数-

import sys

print(sys.argv)
这是我的script.py。我将从命令行将参数传递给script.py-

import subprocess
import sys

p = subprocess.Popen(["bokeh", "serve", "--show", "app.py", "--port", "5006", \
"--args", sys.argv[1], sys.argv[2], sys.argv[3]])
我使用
python script.py t1 t2 t3
调用了脚本,得到了以下输出-

2020-08-17 11:30:07,248 Starting Bokeh server version 0.12.16 (running on Tornado 5.0.2)
2020-08-17 11:30:07,253 Bokeh app running at: http://localhost:5006/app
2020-08-17 11:30:07,253 Starting Bokeh server with process id: 78543
['app.py', 't1', 't2', 't3']

这清楚地表明,我能够读取app.py中传递的参数

以下是bokeh serve的文档:对于非bokeh脚本,它似乎可以工作,有趣的是,请您提供
app.py
的代码,或者至少提供足够的代码让我们重现问题。