How do I load a file into the python console?
Question:
I have some lines of python code that I’m continuously copying/pasting into the python console. Is there a load
command or something I can run? e.g. load file.py
Answers:
From the shell command line:
python file.py
From the Python command line
import file
or
from file import *
For Python 2 give execfile
a try. (See other answers for Python 3)
execfile('file.py')
Example usage:
Let’s use "copy con" to quickly create a small script file…
C:junk>copy con execfile_example.py
a = [9, 42, 888]
b = len(a)
^Z
1 file(s) copied.
…and then let’s load this script like so:
C:junk>python27python
Python 2.7.1 (r271:86832, Nov 27 2010, 18:30:46) [MSC v.1500 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> execfile('execfile_example.py')
>>> a
[9, 42, 888]
>>> b
3
>>>
You can just use an import statement:
from file import *
So, for example, if you had a file named my_script.py
you’d load it like so:
from my_script import *
From the man page:
-i When a script is passed as first argument or the -c option is used, enter interactive mode after executing the script or the command. It does not read the $PYTHONSTARTUP file. This can be useful to inspect global variables or a stack trace when a script raises an exception.
So this should do what you want:
python -i file.py
If you’re using IPython, you can simply run:
%load path/to/your/file.py
See http://ipython.org/ipython-doc/rel-1.1.0/interactive/tutorial.html
If your path
environment variable contains Python (eg. C:Python27
) you can run your py file simply from Windows command line (cmd).
Howto here.
Open command prompt in the folder in which you files to be imported are present. when you type ‘python’, python terminal will be opened. Now you can use
import script_name
Note: no .py extension to be used while importing.
How can I open a cmd window in a specific location?
Python 3: new exec (execfile dropped) !
The execfile solution is valid only for Python 2. Python 3 dropped the execfile function – and promoted the exec statement to a builtin universal function. As the comment in Python 3.0’s changelog and Hi-Angels comment suggest:
use
exec(open(<filename.py>).read())
instead of
execfile(<filename.py>)
I have some lines of python code that I’m continuously copying/pasting into the python console. Is there a load
command or something I can run? e.g. load file.py
From the shell command line:
python file.py
From the Python command line
import file
or
from file import *
For Python 2 give execfile
a try. (See other answers for Python 3)
execfile('file.py')
Example usage:
Let’s use "copy con" to quickly create a small script file…
C:junk>copy con execfile_example.py
a = [9, 42, 888]
b = len(a)
^Z
1 file(s) copied.
…and then let’s load this script like so:
C:junk>python27python
Python 2.7.1 (r271:86832, Nov 27 2010, 18:30:46) [MSC v.1500 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> execfile('execfile_example.py')
>>> a
[9, 42, 888]
>>> b
3
>>>
You can just use an import statement:
from file import *
So, for example, if you had a file named my_script.py
you’d load it like so:
from my_script import *
From the man page:
-i When a script is passed as first argument or the -c option is used, enter interactive mode after executing the script or the command. It does not read the $PYTHONSTARTUP file. This can be useful to inspect global variables or a stack trace when a script raises an exception.
So this should do what you want:
python -i file.py
If you’re using IPython, you can simply run:
%load path/to/your/file.py
See http://ipython.org/ipython-doc/rel-1.1.0/interactive/tutorial.html
If your path
environment variable contains Python (eg. C:Python27
) you can run your py file simply from Windows command line (cmd).
Howto here.
Open command prompt in the folder in which you files to be imported are present. when you type ‘python’, python terminal will be opened. Now you can use
import script_name
Note: no .py extension to be used while importing.
How can I open a cmd window in a specific location?
Python 3: new exec (execfile dropped) !
The execfile solution is valid only for Python 2. Python 3 dropped the execfile function – and promoted the exec statement to a builtin universal function. As the comment in Python 3.0’s changelog and Hi-Angels comment suggest:
use
exec(open(<filename.py>).read())
instead of
execfile(<filename.py>)