Python 関数の紹介: exec 関数の概要と例
はじめに:
Python では、exec はファイルを実行するために使用される組み込み関数です。 Python コードの文字列またはファイルに保存されます。 exec 関数はコードを動的に実行する方法を提供し、プログラムが実行時に必要に応じてコードを生成、変更、実行できるようにします。この記事では、exec 関数の使い方と実用的なコード例を紹介します。
exec 関数の使用方法:
exec 関数の基本構文は次のとおりです:
exec(code, globals=None, locals=None)
ここで:
code
は、実行される Python コードは、ファイルを指す文字列またはファイル オブジェクトであることを意味します。globals
は、現在のグローバル名前空間をデフォルトとする辞書です。このパラメータが指定されている場合、exec はこの名前空間でコードを実行します。locals
は辞書でもあり、デフォルトは globals
パラメータと同じです。この引数を指定すると、exec は名前空間で変数と関数を検索します。 例 1: Python コードを文字列の形式で実行する
次の例は、exec 関数を使用して文字列の形式で Python コードを実行する方法を示しています。
code = ''' def greet(): print("Hello, World!") greet() ''' exec(code)
上 コードでは、実行する Python コードを文字列 code
に格納し、exec 関数に渡します。 exec 関数はコードを動的に実行し、「Hello, World!」を出力します。
例 2: ファイルから Python コードを実行する
exec 関数は、ファイルからの Python コードの実行もサポートしています。以下は、exec 関数を使用してファイルから Python コードを実行する方法を示す例です。
with open('hello.py', 'r') as f: code = f.read() exec(code)
上記のコードでは、hello.py
という名前のファイルを開いて読み取ります。コンテンツは変数 code
に保存されます。次に、変数 code
をパラメータとして exec 関数に渡し、その中の Python コードを実行します。
例 3: 指定された名前空間でコードを実行する
exec 関数は、グローバル名前空間でコードを実行するだけでなく、指定された名前空間でコードを実行することもできます。次の例は、exec 関数を使用して、指定された名前空間で Python コードを実行する方法を示しています。
namespace = {} code = ''' def multiply(a, b): return a * b result = multiply(3, 5) ''' exec(code, namespace) print(namespace['result']) # 输出结果:15
上記のコードでは、最初に空の辞書 namespace
を名前空間として作成します。 。次に、実行する Python コードを文字列 code
に保存し、パラメータとして namespace
を exec 関数に渡します。このように、exec 関数は名前空間 namespace
でコードを実行し、結果を名前空間の変数 result
に保存します。最後に、namespace['result']
にアクセスして実行結果を取得します。
概要:
この記事では、Python の exec 関数とその使用方法を紹介します。 exec 関数はコードを動的に実行する方法を提供し、必要に応じて Python コードを生成、変更、実行できます。 exec 関数を使用して文字列形式で Python コードを実行する方法、ファイルから Python コードを実行する方法、および指定された名前空間でコードを実行する方法を示すサンプル コードをいくつか示しました。読者が Python プログラムを開発する際の参考になれば幸いです。
以上は Python 関数の入門、exec 関数の紹介と例でした。
以上がPython 関数入門: exec 関数の概要と例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。