Pythonでユーザー入力から動的に名前が付けられた変数を作成する

Pythonでユーザー入力から動的に名前が付けられた変数を作成してみます。

■Python

今回のPythonのバージョンは、「3.8.5」を使用しています。(Windows10)(pythonランチャーでの確認)

■ユーザー入力から動的に名前が付けられた変数を作成する

では、早速Pythonでユーザー入力から動的に名前が付けられた変数を作成してみます。

■globals ()関数を使用する

■コード

dynamicvariable_name = "testvariable"

globals()[dynamicvariable_name] = "テストだよ"

print(testvariable)

dynamicvariable_name(動的変数名)という変数を作成し、testvariableを格納します。

格納後、globals ()関数を使用し、dynamicvariable_name(動的変数名)に格納したtestvariableに値を代入しますが、globals ()関数で指定するのは、dynamicvariable_name(動的変数名)という変数になります。今回は文字列を代入しています。

代入後、print関数でdynamicvariable_name(動的変数名)に格納したtestvariableという動的変数に代入した値を出力してみます。

■実行

このスクリプトを「dynamicvariablename_test1.py」という名前で保存し、コマンドプロンプトから実行してみます。

実行してみると、動的変数に代入した値が出力されることを確認できました。

■locals()関数を使用する

次にlocals()関数を使用し、動的変数を作成し、その中に値を代入してみます。

■コード

dynamicvariable_name = "testvariable"

locals()[dynamicvariable_name] = "テストだよ"

print(testvariable)

globals ()関数を使用した時と同じように、dynamicvariable_name(動的変数名)という変数を作成し、testvariableを格納します。

格納後、locals()関数を使用し、dynamicvariable_name(動的変数名)という変数を指定し、その中のtestvariableに値を代入します。

代入後、dynamicvariable_name(動的変数名)に格納したtestvariableという動的変数に代入した値を出力してみます。

■実行

このスクリプトを「dynamicvariablename_test2.py」という名前で保存し、コマンドプロンプトから実行してみます。

実行してみると、globals ()関数を使用した時と同じで、動的変数に代入した値が出力されることを確認できました。

■exec()関数を使用する

次にexec()関数を使用し、動的変数を作成し、その中に値を代入してみます。

■コード

dynamicvariable_name = "testvariable"

exec("%s = %d" % (dynamicvariable_name,1000))

print(testvariable)

exec()関数を使用し、dynamicvariable_name(動的変数名)という変数を指定し、その中に値を代入します。

代入後、dynamicvariable_name(動的変数名)という変数に格納したtestvariableという動的変数へ代入した値を出力してみます。

■実行

このスクリプトを「dynamicvariablename_test3.py」という名前で保存し、コマンドプロンプトから実行してみます。

実行してみると、dynamicvariable_name(動的変数名)という変数に格納したtestvariableという動的変数へ代入した値が出力されることが確認できました。

■vars()関数を使用する

次にvars()関数を使用し、動的変数を作成し、その中に値を代入してみます。

■コード

dynamicvariable_name = "testvariable"

vars()[dynamicvariable_name] = "テストだよ"

print(testvariable)

vars()関数を使用し、dynamicvariable_name(動的変数名)という変数を指定し、その中に値を代入します。

代入後、dynamicvariable_name(動的変数名)という変数に格納したtestvariableという動的変数へ代入した値を出力してみます。

■実行

このスクリプトを「dynamicvariablename_test4.py」という名前で保存し、コマンドプロンプトから実行してみます。

実行してみると、vars()関数を使用し、dynamicvariable_name(動的変数名)という変数に格納したtestvariableという動的変数へ代入した値が出力されることが確認できました。

コメント

タイトルとURLをコピーしました