检查脚本是独立运行还是通过Django接口运行

1 投票
1 回答
737 浏览
提问于 2025-04-18 11:42

大家好,

我写了一个脚本,最开始是通过命令行运行的。这个脚本的目的是从一个csv文件中加载数据,然后把这些数据放进mySQL数据库里。现在,我对这个脚本进行了修改,让它可以通过Django运行,这样用户就可以在浏览器里点击一个叫“浏览...”的按钮,选择csv文件,然后我的脚本就会读取这个文件,把数据推送到mySQL中。

现在我遇到的问题是,数据库里有一个表格需要包含两个字段:一个是本地文件名,另一个是用户机器上用于网页界面的文件名(Django)。

所以我想问的是:有没有办法判断我是在命令行启动这个脚本,还是通过Django网页应用启动的?

谢谢大家。

1 个回答

1

在Python中,如果当前的脚本是作为主程序运行的,特殊的Python变量__name__会被设置为字符串"__main__"

所以,要判断这个脚本是否是直接从命令行运行的,比如说python my_script.py,只需要用一个if语句就可以了,像这样:

if __name__ == '__main__':
    do_stuff()

撰写回答