从SQL查询中提取的动态运行的Python脚本

时间:2019-05-02 17:58:04

标签: python function

我有一个Python脚本,该脚本的中间有一个函数,我想查询数据库表并运行其中一列中列出的任何Python脚本。 Python脚本本身与正在执行的主要Python脚本位于同一文件夹中。由于特定的原因,我需要将这些脚本名称保留在数据库表中,然后从那里调用/读取它们,因此是我的问题。

DB中的python_script_table如下:

TABLE_ID    PYTHON_SCRIPT
1           script1.py
2           script2.py
3           null

查询将类似于:

select * from python_script_table where python_script is not null

那时候我想执行在PYTHON_SCRIPT下返回的任何内容(在本例中为script1.py和script2.py)。

我不确定解决此问题的最佳方法。

1 个答案:

答案 0 :(得分:1)

您应该能够执行如下所示的脚本:

with open('path/to/script.py') as file:
    script = file.read()
    exec(script)