我在Windows上使用Django shell时发现了一些奇怪的东西。我用一个简单的脚本测试了不同的调用:
for it in range(5):
print(it)
在Python环境或manage.py shell
环境中键入此脚本时,它可以正常工作。但是当我将这段代码放在一个文件中并用python manage.py shell < myFile.py
执行时,当我在循环中打印时,没有显示任何内容,输出是“......”。
我通过在Eclipse的内置控制台中执行它来超越了这个限制,但是我很好奇从输出文件调用脚本时输出没有很好地显示的原因。
有谁知道发生了什么?
答案 0 :(得分:2)
两者都运作良好
此外,对于那些使用Python 3+的人来说,execfile不再起作用了,替换
echo 'execfile("myFile.py")' | python manage.py shell
与
echo exec(open('MyFile.py').read()) | python manage.py shell
谢谢你们俩!
答案 1 :(得分:1)
它的工作原理如下:
echo 'execfile("myFile.py")' | python manage.py shell
答案 2 :(得分:1)
试试这个
echo "for i in range(5): print i" | python manage.py shell