Python
 Computer >> コンピューター >  >> プログラミング >> Python

Pythonのグローバル変数とローカル変数の違いとは?わかりやすく解説

Pythonにおいて、グローバル変数とはプログラム全体(モジュール内のどこからでも)アクセスできる変数のことです。一方、ローカル変数は特定のスコープ内、たとえば関数定義の中でのみアクセスできる変数であり、関数内で一時的に使用される変数などがこれに該当します。

コード例

以下のコードを見てみましょう。

q = "I love coffee"  # グローバル変数

def f():
    p = "Me Tarzan, You Jane."  # ローカル変数
    print(p)

f()
print(q)

実行結果

このコードを実行すると、次のような出力が得られます。

Me Tarzan, You Jane.
I love coffee

このコードでは、p は関数 f() 内で定義されたローカル変数であり、この関数の内部からしかアクセスできません。一方、qグローバル変数であり、モジュール内のどこからでも参照することができます。

補足:globalキーワードについて

関数の中からグローバル変数の値を変更したい場合は、global キーワードを使用します。global を宣言しないまま関数内で同じ名前の変数に代入すると、それは新しいローカル変数として扱われるため注意が必要です。

count = 0  # グローバル変数

def increment():
    global count
    count += 1

increment()
print(count)  # 出力: 1

このように、変数のスコープ(有効範囲)を正しく理解することで、意図しないバグを防ぎ、読みやすく保守性の高いコードを書くことができます。

  1. 【Python】Tkinterのroot.destroy()とroot.quit()の違いを徹底解説

    PythonのGUIライブラリ「Tkinter」では、アプリケーションを終了する方法として destroy() と quit() の2つのメソッドがよく使われます。似たような役割に見えますが、実際には動作が異なります。この記事では、それぞれの違いをサンプルコード付きでわかりやすく解説します。 root.destroy()とは tkinterのウィンドウオブジェクトに対して destroy() メソッドを呼び出すと、mainloop の処理が終了し、ウィンドウ内のすべてのウィジェットが破棄されます。つまり、ウィンドウそのものが完全に閉じられ、バックグラウンドで動作しているインタプリタ(Tcl/T

  2. Pythonのtkinterとtkinter.ttkウィジェットの違いとは?スタイリング方法を解説

    tkinter.ttkは、tkinterウィジェットのスタイル(見た目)を設定するためのモジュールです。HTML要素にCSSでデザインを適用するように、tkinter.ttkを使うことでtkinterウィジェットの外観を自由にカスタマイズできます。 tkinterウィジェットとtkinter.ttkの主な違い tkinterウィジェットは、ボタン・ラベル・テキスト・スクロールバーなど、基本的なGUI部品を追加するために使用します。一方、tkinter.ttkは標準のtkinterよりも多くの種類のウィジェットをサポートしています。 tkinter.ttkではPlaceやPack()、Grid