How to run a Python script from IDLE command line?

2020-07-16 08:47发布

In a bash shell, I can use 'bash ' or 'source ' to invoke a script by hand. Can I do the similar thing in the Python IDLE's interactive shell? I know I can go to File >> Open Module, then run it in a separate window, but that's troublesome.

3条回答
ら.Afraid
2楼-- · 2020-07-16 08:52

If what you meant is executing in the Python IDLE's interactive shell instead of command prompt or command line, then I usually use this approach:

python -m idlelib.idle -r "C:/dir1/dir2/Your script.py"

It works well with me. Tested on my Windows 10, python 3.7.3.

Please ensure that you have added your desired python version on your environment variables.

查看更多
smile是对你的礼貌
3楼-- · 2020-07-16 09:07

You can just run a Python script from the commandline:

python <script.py>
查看更多
萌系小妹纸
4楼-- · 2020-07-16 09:14

One method I have found is execfile. It has the signature execfile(<filename>,<globals>,<locals>) and runs the file in the same thread as the current IDLE Session. This method is Python 2 specific

The method the OP is asking for (in a different thread/window) would be to use subprocess to run in a different thread/window.

import subprocess

#any of these will run the file.  Pick the one that best suits you.

subprocess.call(['python','filename.py'])
subprocess.check_call(['python','filename.py'])
subprocess.Popen(['python','filename.py'])

These essentially do what nneonneo's answer does, but using subprocess to execute it in a different thread.

查看更多
登录 后发表回答