问题描述
我正在为我的 Django 项目编写一些 Python 脚本。我正在使用 manage.py 和 shell 运行它。
如果我使用 manage.py 运行import json
并出售它,则它不起作用。
但是如果我不使用 shell 和 manage.py 尝试它会起作用,我不知道为什么会这样。
使用 manage.py 和 shell:(不工作)
python3 manage.py shell < custom_scripts/imports.py
Error: NameError: name 'json' is not defined
没有 manage.py 和 shell:(有效)
python3 custom_scripts/imports.py
脚本内的代码:
import json
print(json.loads("{}"))
有什么想法吗?
解决方法
从 shell
执行此类操作不是推荐的方法,如果这是将多次运行的内容,您可以创建自定义命令来为您运行。
有关类似问题,请参阅 answer by @danodonovan。