从 Web 应用程序将参数传递给 Python 脚本?
Posted
技术标签:
【中文标题】从 Web 应用程序将参数传递给 Python 脚本?【英文标题】:Pass Parameters to Python Script from Web App? 【发布时间】:2020-02-07 00:38:52 【问题描述】:我有一个 python 文件,它从命令行接收 6 个参数并运行。
python_file.py param1, param2, param3, param4, param5, param6
我想做的是使用带有引导程序的烧瓶从网络应用程序传递参数。每个参数都需要有来自前端的选项来选择用户选择的参数。我在下面的前端寻找的示例是:
Param1_drop_down: Param2 drop_down:
- option1 - option1 etc..
- option2
- option3
- option4
对此有什么想法吗?我是前端工作的新手,因此我们将不胜感激。
【问题讨论】:
您的问题到底是什么?是如何创建带有下拉选项的网络应用程序吗?或者您是否已经拥有该 Web 应用程序,并且想知道如何将数据从它发送到 Flask 服务器,然后将它们传递到您的 Python 文件? @AlexanderRossa 这两者都是。 【参考方案1】:由于你使用命令行接收参数,我推荐使用subprocess.Popen
,这样你可以用同样的方式运行你的脚本,Popen希望你运行一个bash命令,你可以很容易地使用它使用用户选择的 args 执行您的 python 文件。
编辑更清楚: 假设你有这个 python 脚本。
from time import sleep
count = 0
while True:
print("Hello", count)
count += 1
sleep(10)
如果您想从另一个脚本调用它,您可以使用subprocess.Popen
为您执行此操作。
即
import subprocess
process = subprocess.Popen(["python3","yourfile.py"])
#Do something more while the other process is running
您还可以将 Popen 输出重定向到一个变量,并对返回的代码做一些工作。
【讨论】:
如果我只需要在不使用命令行的情况下将参数直接传递给 python 文件怎么办?这就是你所说的这个选项的作用吗? 我添加了更多关于我的答案的信息。是的,它将作为命令行运行,但它将直接从您的代码中运行,因此,您可以操纵要使用的参数。以上是关于从 Web 应用程序将参数传递给 Python 脚本?的主要内容,如果未能解决你的问题,请参考以下文章
使用 argparser 将参数传递给入口点 python 脚本
从 subprocess.Popen 将参数传递给 argparse