python – Run function from the command line

python – Run function from the command line

With the -c (command) argument (assuming your file is named

$ python -c import foo; print foo.hello()

Alternatively, if you dont care about namespace pollution:

$ python -c from foo import *; print hello()

And the middle ground:

$ python -c from foo import hello; print hello()

Just put hello() somewhere below the function and it will execute when you do python

For a neater solution you can use this:

if __name__ == __main__:

That way the function will only be executed if you run the file, not when you import the file.

python – Run function from the command line

python -c from myfile import hello; hello() where myfile must be replaced with the basename of your Python script. (E.g., becomes myfile).

However, if hello() is your permanent main entry point in your Python script, then the usual way to do this is as follows:

def hello():
    print Hi :)

if __name__ == __main__:

This allows you to execute the script simply by running python or python -m myfile.

Some explanation here: __name__ is a special Python variable that holds the name of the module currently being executed, except when the module is started from the command line, in which case it becomes __main__.

Leave a Reply

Your email address will not be published. Required fields are marked *