Skip to main content
PyCon US is happening May 14th-22nd in Pittsburgh, PA USA.  Learn more

Evaluate and display command line expressions with python -me expr

Project description

For example:

$ python -me 1 + 1
2

Like python -c but no need for a print. But wait, there’s more.

As a bonus, if the first argument is a module name then it will output the location of the module source code:

$ python -me os
/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/os.py

If you follow the name of the module with a command then the module will be opened with that command. For example, the following will open the os module source in vim:

$ python -me os vim

The “e” module recognises the special command names “edit” and “view” which will result in it looking up your editor and viewer commands in the environment variables EDITORandPAGER respectively. The latter defaults to “less”. This is slightly easier than writing, for example:

$ vim `python -me os`

… especially if you’re going back to edit a previous “python -me” command using line editing.

Also, “python -me help” is a shortcut to Python’s interactive help mechanism.

Idea from Georg Brandl. Foolishly implemented by Michael Foord and Richard Jones.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page