Pythonでは、動的に変数名を指定して変数を作成することができます。
今回は、変数を動的に作成する手法を使って連番の変数名を作成する方法を紹介していきます。
目次から探す
Pythonで連番の変数名を作成する方法
Pythonでは、連番の変数名を作成する方法がいくつかありますが、ここではexec関数
を使用する方法について解説します。
ただし、関数内ではこの方法は使用できず、変数を動的に作成することはおすすめできません。
exec関数
は、文字列として与えられたPythonのコードを実行するための関数です。
これを利用して、連番の変数名を作成することができます。
以下に、具体的なサンプルコードを示します。
start = 1
end = 5
for i in range(start, end+1):
var_name = f"var{i}"
exec(f"{var_name} = i")
print(f"{var_name} = {eval(var_name)}")
上記のコードでは、start
とend
という変数に開始と終了の値を設定し、for
ループを使用して連番の変数名を作成しています。
f-string
を使用して、変数名を動的に生成しています。
exec関数
を使用して、生成した変数名に対して値を代入しています。
そして、eval関数
を使用して、変数の値を取得し、出力しています。
実行結果は以下のようになります。
var1 = 1
var2 = 2
var3 = 3
var4 = 4
var5 = 5
このように、exec関数
を使用することで、連番の変数名を作成し、値を代入することができます。
ただし、関数内ではこの方法は使用できないため、注意が必要です。
また、変数を動的に作成することは可読性や保守性の観点からおすすめできませんので、適切な場面で使用するようにしましょう。