Javascriptのローカル変数とグローバル変数

| | |

変数は、プログラミングにおいて重要で遍在する概念です。変数は、データを格納するためのコンテナーです。変数には、ユーザー名、メールアドレス、ユーザーのオンラインゲームインベントリのアイテムなど、さまざまな種類のデータを保存できます。

Pythonでプログラミングする場合、グローバルとローカルの2種類の変数に遭遇します。このガイドでは、これら2種類の変数の違い、それらがどのように機能するか、コードでどのように使用できるかについて説明します。

Python変数

Pythonの場合、変数は主にデータのラベル付けと保存に使用されます。変数を定義するときは、それに名前を付けます。その後、コードの後半でこの名前を使用して、それが表すデータを取得できます。変数には、文字列、数値、リスト、またはその他の種類のデータを格納できます。

ゲームを作成していて、ユーザー名を格納するとします。プログラムに名前を入力する代わりに、変数を使用して名前を保存できます。

ゲームのユーザー名を保存する変数は次のとおりです。

nameという変数を宣言しましたそしてそれを"CarltonHernandez"に設定します。

この変数を宣言したので、コードで操作できます。たとえば、ユーザー名を変更する場合は、次のコードを使用して変更できます。

コードの最初の行で、値"CarltonHernandez"を変数nameに割り当てました。したがって、変数 nameに値「CarltonLewisHernandez」を割り当てました。変数に新しい値を割り当てると、プログラムは最新の値を上書きして、新しい値に置き換えます。

Pythonグローバル変数

Pythonには、ローカル変数とグローバル変数の2つの主要なタイプがあります。

グローバル変数は、関数の外部で宣言された変数です。グローバル変数にはグローバルスコープがあります。これは、関数を含むプログラム全体からアクセスできることを意味します。この概念の次の視覚的表現を検討してください。

Pythonのグローバル変数とローカル変数

XOm04" グローバル変数にはプログラムからアクセスできます。

Pythonのグローバル変数の例を次に示します。

グローバル変数を宣言すると、すべての変数で使用できるようになります。コード。たとえば、次のコードを使用して、グローバル変数 nameに含まれる値を出力する関数を作成できます。

コードは次を返します:

ここで呼び出された関数を初期化しました printName()。この関数を呼び出すと、 name変数の値がコンソールに出力されます。これは、関数を呼び出したときに上記で発生したことです。

Pythonローカル変数

一方、ローカル変数は、関数内で宣言された変数です。これらの変数は、ローカルスコープを持つことが知られています。これは、それらが宣言されている関数でのみアクセス可能であることを意味します。 Pythonの変数の概念を説明する、前に示したこの視覚的表現をもう一度考えてみましょう。

グローバル変数とローカル変数

ローカル変数は、特定の関数でのみアクセスできます。

ローカル変数を使用するプログラムの例を次に示します。

コードは次を返します:

このコードでは、 printName()という楽しい宣言をしました。この関数では、 nameという変数を定義しました。この変数は関数内で宣言しているため、ローカル変数です。

コードの最後で、 printName()を使用して関数を呼び出しました。それに応じて、プログラムは printName()関数を実行しました。

この例のname変数は、printNameに対してローカルです。 ()。したがって、関数の外部でこの変数にアクセスすることはできません。このローカル変数nameを、宣言されている関数の外に出力しようとすると、次のようになります。

コードは次を返します:

外部のローカル変数にアクセスできませんその変数を割り当てた関数のメインプログラムでローカル変数にアクセスしようとすると、プログラムはエラーをスローします。

グローバル変数とローカル変数の使用

プログラムで同じ名前の変数を使用することができますローカル変数とグローバル変数の両方。ローカル変数はローカルスコープで読み取られ、グローバル変数はグローバルスコープで読み取られます。

これは、次のようなプログラムの例です。同じ名前のローカル変数とグローバル変数:

コードは次を返します:

最初に、コードにグローバル変数 scoreを割り当てました。 、 それからcalculateScore()で、同じ名前のローカル変数を作成しました。

<のローカル変数scoreの値code>calculateScore()関数は10に等しいので、関数calculateScore()を呼び出すと、メッセージ Final score:10がに出力されます。 console。

ただし、calculateScore()を除いて、変数 scoreの値は5です。これはグローバルスコープの変数scoreの値を5に設定します。したがって、 Initial score:を出力し、その後に変数 score の値を出力すると、プログラムは値5を表示します。

関数内でのグローバル変数の割り当て

前のセクションでは、グローバル変数が関数の外部で(つまりグローバルに)定義されることを学びました。ローカル変数は関数内で定義されます(ローカルなど)。ただし、 global キーワードを使用して関数内の変数を定義し(たとえば、ローカル)、次にその関数をプログラム内で(グローバルに)実行すると、その変数はグローバル変数になります。

次の例を検討してください。

コードは次を返します:

このコードでは、変数 name の値をsetName()内でローカルに割り当てました。関数。ただし、この変数を定義する前にglobalキーワードを使用したため、 name変数にグローバルスコープを指定する準備をしています。ただし、 name 変数は、プログラムでこの関数を実行した後、のみグローバル変数になります。

プログラムがsetName()関数を実行した後、 print()を実行したときと同様に、プログラムで name変数を使用するたびに関数の場合、 name 変数がグローバル変数変数になっているため、プログラムはローカル関数で宣言した値を使用します。

関数内のグローバル変数を変更することは直接できないと先に述べましたか?それは本当だ。ただし、globalキーワードを使用して、関数内のグローバル変数を間接的に変更できます。

関数内でglobalキーワードを使用して、グローバルの値を変更するプログラムの例を次に示します。変数:

コードは次を返します:

このコードを分解してみましょう。最初にnameという変数を宣言し、それに値「BiancaPeterson」を割り当てました。これはグローバル変数です。そこで、 setName()という関数を宣言しました。呼び出されると、 setName()関数はname変数の値を変更します。

次に、 setName()を呼び出しました。 は、 name の値を「BiancaLucindaPeterson、"」に変更しました。最後に、 nameの値をコンソールに出力しました。<の値code> name グローバル変数は「BiancaLucindaPeterson、"」になりました。

通常、globalキーワードは慎重に使用する必要があります。 globalキーワードを頻繁に使用すると、プログラム内の変数のスコープを理解するのが難しくなる可能性があります。

結論

グローバル変数は、関数の外部で宣言された変数です。ローカル変数は、関数で宣言された変数です。

グローバル変数を関数で直接変更することはできませんが、globalキーワードを使用して、グローバル変数の値を変更する関数を作成できます。この場合、グローバル変数の値は、この関数を実行するまで変更されません。

このチュートリアルでは、例、ローカル変数とグローバル変数の基本、およびそれらの動作について説明しました。これで、プロのプログラマーのようにPythonコードでローカル変数とグローバル変数の使用を開始する準備が整いました!

Shop

Learn programming in R: courses

$

Best Python online courses for 2022

$

Best laptop for Fortnite

$

Best laptop for Excel

$

Best laptop for Solidworks

$

Best laptop for Roblox

$

Best computer for crypto mining

$

Best laptop for Sims 4

$

Latest questions

NUMPYNUMPY

psycopg2: insert multiple rows with one query

12 answers

NUMPYNUMPY

How to convert Nonetype to int or string?

12 answers

NUMPYNUMPY

How to specify multiple return types using type-hints

12 answers

NUMPYNUMPY

Javascript Error: IPython is not defined in JupyterLab

12 answers

News


Wiki

Python OpenCV | cv2.putText () method

numpy.arctan2 () in Python

Python | os.path.realpath () method

Python OpenCV | cv2.circle () method

Python OpenCV cv2.cvtColor () method

Python - Move item to the end of the list

time.perf_counter () function in Python

Check if one list is a subset of another in Python

Python os.path.join () method