ホームページ >バックエンド開発 >Python チュートリアル >コマンドラインから Python 関数を直接実行するにはどうすればよいですか?
コマンドラインからの Python 関数の実行
質問:
次のようなものがあるとします。 Python コード:
def hello(): return 'Hi :)'
コマンド ラインからこの関数を直接実行するにはどうすればよいですか?
問題の理解:
Python スクリプトには通常、スクリプトの実行時に実行されるコードを含む main() 関数。ただし、この関数が存在しない場合、または実行したい関数がメイン関数ではない場合、コマンド ラインから直接実行するのは難しい場合があります。
解決策:
-c (コマンド) 引数を使用してコマンドラインから特定の Python 関数を実行するには、いくつかの方法があります:
1。モジュールと名前空間の汚染のインポート:
$ python -c 'import foo; print foo.hello()'
このアプローチでは、foo モジュールをインポートし、そこから hello() 関数を直接呼び出します。ただし、foo モジュールの名前空間全体がインタープリタに公開されます。
2.選択的インポートと名前空間汚染なし:
$ python -c 'from foo import hello; print hello()'
このメソッドは、インタープリターの名前空間を汚染せずに hello() 関数のみをインポートします。名前の競合を最小限に抑えたい場合は、これがよりクリーンで推奨されるアプローチです。
3.名前空間制御の中間インポート:
$ python -c 'from foo import *; print hello()'
このオプションは、foo モジュール全体をインタープリタの名前空間にインポートします。これにより、関数呼び出しの前にモジュール名を付ける必要がなくなりますが、モジュールに多くの関数が含まれている場合、名前空間の汚染につながる可能性があります。
以上がコマンドラインから Python 関数を直接実行するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。