この記事は90%~100%ChatGPTで作られています。
このブログではAffinger5を使用しています。
はじめに
Pythonのexec関数は、動的にPythonのコードを実行するための便利なツールです。
この関数は文字列形式のPythonコードを受け取り、それを評価(実行)します。しかし、exec関数の使い方がわからないと、その真価を発揮することができません。そこで、今回はexec関数の基本的な使い方と、その活用例を紹介します。

exec関数の基本的な使い方
まず、exec関数の基本的な使い方から説明します。
exec関数は、引数としてPythonコードの文字列を受け取ります。そして、その文字列を実行します。このとき、exec関数は戻り値を返しません。つまり、exec関数を用いて何かの値を返そうとするとエラーになります。

ソースコード例
1 2 |
code = 'print("Hello, Python!")' exec(code) |
出力結果
Hello, Python!
exec関数で変数を使う
次に、exec関数の中で変数を使う方法について説明します。
exec関数の中で変数を使うには、exec関数の第二引数に変数を含んだ辞書を渡します。この辞書は、exec関数内部のスコープとなります。

ソースコード例
1 2 3 |
variables = {'x': 10, 'y': 20} code = 'print(x + y)' exec(code, variables) |
出力結果
30
exec関数でローカル変数を使用する
exec関数では、ローカル変数を使用することも可能です。
第二引数にローカル変数を含む辞書を渡すことで、exec関数の中でローカル変数を利用することができます。

ソースコード例
1 2 3 |
code = 'print(z * z)' local_variables = {'z': 5} exec(code, {}, local_variables) |
出力結果
25
exec関数で新しい変数を作成する
最後に、exec関数を使って新しい変数を作成する方法を説明します。
exec関数の中で新しい変数を定義し、その後でその変数を参照することが可能です。

ソースコード例
1 2 3 4 |
globals = {} code = 'new_var = 100' exec(code, globals) print(globals['new_var']) |
出力結果
100
まとめ
以上がPythonのexec関数の基本的な使い方とその活用例になります。
exec関数を利用すれば、動的にPythonコードを実行することが可能です。ただし、安全性の観点から利用には注意が必要です。exec関数を使う際は、必ず信頼できるコードだけを実行するようにしましょう。
また、exec関数を用いて新しい変数を作成したり、既存の変数を利用したりすることも可能です。ただし、exec関数は戻り値を返さないため、exec関数内で計算した結果を外部で利用するには、変数を通じて行う必要があります。
この記事がPythonのexec関数の理解に役立てば幸いです。
最後まで読んで頂き、ありがとうございました。少しでもお役にたてたなら幸いです!

この記事は90%~100%ChatGPTで作られています。