Pythonグローバル変数とローカル変数[python Function][Pythonグローバル変数役割ドメイン][Pythonローカル変数役割ドメイン]
あなたの「関心」と「いいね」は、信頼であり、認めであり、支持であり、原動力である...
如意は相佐に会って、伝言を残すことができます.私は全力を尽くして正確で全面的にしようとして、一生修正して補充して更新します.
文書ディレクトリ1 Pythonグローバル変数 1.1 Pythonグローバル変数概要 1.2グローバル変数を定義する方法 1.2.1関数外でのグローバル変数の定義 1.2.2関数内でグローバル変数を定義する 1.3 Pythonグローバル変数ドメイン概要 2 Pythonローカル変数 2.1 Pythonローカル変数概要 2.2 Python局所変数作用域概要 3指定されたスコープ内の変数 を取得する..3.1 globals()関数を使用して、グローバル役割ドメイン内のすべてのグローバル変数 を取得します. 3.2 locals()関数を使用して、現在の役割ドメイン内のすべての変数 を取得します. 3.3 vars(object)関数を使用して指定範囲内のすべての変数 を取得します.【友情リンク】 微信公衆番号:私たちの阿傑 ブログ園 【参考資料】 [python公式サイト](https://www.python.org/) [Python 3.8.2 documentation](https://docs.python.org/release/3.8.2/)
1 Pythonグローバル変数
1.1 Pythonグローバル変数の概要
Pythonでは、変数の定義位置によって区分され、すべての関数の外部で定義される変数をグローバル変数、英語でGlobal Variableと呼ぶ.
1.2グローバル変数を定義する方法
1.2.1関数外でのグローバル変数の定義
すべての関数の外で定義された変数は、鉄定はグローバル変数です.
例を次に示します.
実行結果:
1.2.2関数内のグローバル変数の定義
関数内で定義された変数は、
例を次に示します.
実行結果:
1.3 Pythonグローバル変数の役割ドメインの概要
Pythonグローバル変数のデフォルトの役割ドメインはプログラム全体です.
具体的には、グローバル変数は、各関数の外部で使用してもよいし、各関数の内部で使用してもよい.上記の例から分かるように、グローバル変数nameは、関数内にアクセスしてもよいし、関数外にアクセスしてもよい.
2 Pythonローカル変数
2.1 Pythonローカル変数の概要
Pythonでは,変数の定義位置によって区分され,関数内部で定義された変数を局所変数,英語ではLocal Variableと呼ぶ.
例を次に示します.
例1、
実行結果:
例2、
実行結果:
2.2 Pythonローカル変数の役割ドメインの概要
Pythonローカル変数の役割ドメインは関数内部に限られており、関数を出すと使えなくなります.
具体的には、ローカル変数が関数の外部にアクセスされ、Pythonインタプリタは
3指定されたスコープ内の変数の取得
3.1 globals()関数を使用してグローバル役割ドメイン内のすべてのグローバル変数を取得する
使用形式は次のとおりです.
以上のフォーマットの説明に対して、 戻り値:globals()関数は、Pythonに組み込まれたグローバル変数を含むグローバル役割ドメイン内のすべてのグローバル変数を含む辞書を返します.キーは変数名で、値は変数値です. 例を次に示します.
実行結果:
3.2 locals()関数を使用して、現在の役割ドメイン内のすべての変数を取得
使用形式は次のとおりです.
以上のフォーマットの説明に対して、 戻り値:現在の役割ドメイン(関数内でlocals()関数を使用)を含む辞書を返します.関数にlocals()関数を使用し、globals()関数と同じ機能を持つすべての変数(Pythonに組み込まれたグローバル変数を含む)の辞書. 例を次に示します.
実行結果:
3.3 vars(object)関数を使用して指定した範囲内のすべての変数を取得する
使用形式は次のとおりです.
以上のフォーマットの説明に対して、 戻り値:指定されたobjectオブジェクトの範囲内のすべての変数(Pythonに組み込まれたグローバル変数を含む)からなる辞書を返します.
例を次に示します.
実行結果:
【友情リンク】
微信公衆番号:私たちのジェイ
ブログ
【参考資料】
Python公式サイト
Python 3.8.2 documentation
如意は相佐に会って、伝言を残すことができます.私は全力を尽くして正確で全面的にしようとして、一生修正して補充して更新します.
文書ディレクトリ
1 Pythonグローバル変数
1.1 Pythonグローバル変数の概要
Pythonでは、変数の定義位置によって区分され、すべての関数の外部で定義される変数をグローバル変数、英語でGlobal Variableと呼ぶ.
1.2グローバル変数を定義する方法
1.2.1関数外でのグローバル変数の定義
すべての関数の外で定義された変数は、鉄定はグローバル変数です.
例を次に示します.
name = ' ' #
def info(): # info()
print(' name =', name)
info() # info()
print(' name =', name)
実行結果:
name =
name =
1.2.2関数内のグローバル変数の定義
関数内で定義された変数は、
global
キーワードを使用して修飾されると、その変数がグローバル変数になります.例を次に示します.
def info(): # info()
global name # : global , , 。
name = ' ' # : 。 name 。
print(' name =', name)
info() # info()
print(' name =', name)
実行結果:
name =
name =
1.3 Pythonグローバル変数の役割ドメインの概要
Pythonグローバル変数のデフォルトの役割ドメインはプログラム全体です.
具体的には、グローバル変数は、各関数の外部で使用してもよいし、各関数の内部で使用してもよい.上記の例から分かるように、グローバル変数nameは、関数内にアクセスしてもよいし、関数外にアクセスしてもよい.
2 Pythonローカル変数
2.1 Pythonローカル変数の概要
Pythonでは,変数の定義位置によって区分され,関数内部で定義された変数を局所変数,英語ではLocal Variableと呼ぶ.
例を次に示します.
例1、
def info(): # info()
name = ' ' # name
print(' name =', name)
info() # info()
print(' name =', name) # ,
実行結果:
name =
print(' name =', name)
NameError: name 'name' is not defined
例2、
def info(age): # info(age)
name = ' ' # name
print(' name =', name)
print(' age =', age)
info(18) # info()
print(' name =', name) #
print(' name =', age) # ,
実行結果:
name =
age = 18
Traceback (most recent call last):
File "D:/Data/ProfessionalSkills/Python/PycharmProjects/demo/demo.py", line 11, in <module>
print(' name =', name) #
NameError: name 'name' is not defined
2.2 Pythonローカル変数の役割ドメインの概要
Pythonローカル変数の役割ドメインは関数内部に限られており、関数を出すと使えなくなります.
具体的には、ローカル変数が関数の外部にアクセスされ、Pythonインタプリタは
NameError
エラーを報告し、アクセスする変数を定義していないことを示します.上記の例および実行結果から分かる.3指定されたスコープ内の変数の取得
3.1 globals()関数を使用してグローバル役割ドメイン内のすべてのグローバル変数を取得する
使用形式は次のとおりです.
globals()
以上のフォーマットの説明に対して、
globals()
:Pythonの内蔵関数です.#
name = ' '
age = 18
def info():
#
gender = ' '
num = 1012
print(globals())
globals()['name'] = ' ' # name,
print(' name =', name)
実行結果:
{'__name__': '__main__', '__doc__': None, '__package__': None, '__loader__': <_frozen_importlib_external.SourceFileLoader object at 0x0000017FE0CE0880>, '__spec__': None, '__annotations__': {}, '__builtins__': <module 'builtins' (built-in)>, '__file__': 'D:/Data/ProfessionalSkills/Python/PycharmProjects/demo/demo.py', '__cached__': None, 'name': ' ', 'age': 18, 'info': <function info at 0x0000017FE2935EE0>}
name =
3.2 locals()関数を使用して、現在の役割ドメイン内のすべての変数を取得
使用形式は次のとおりです.
locals()
以上のフォーマットの説明に対して、
locals()
:Pythonの内蔵関数です.#
name = ' '
age = 18
def info():
#
gender = ' '
num = 1012
print(locals()) # locals()
locals()[gender] = ' ' # ,
print(' gender =', gender)
info() # info()
print('------------------------------')
print(locals()) # locals()
実行結果:
{'gender': ' ', 'num': 1012}
gender =
------------------------------
{'__name__': '__main__', '__doc__': None, '__package__': None, '__loader__': <_frozen_importlib_external.SourceFileLoader object at 0x0000012533DF0880>, '__spec__': None, '__annotations__': {}, '__builtins__': <module 'builtins' (built-in)>, '__file__': 'D:/Data/ProfessionalSkills/Python/PycharmProjects/demo/demo.py', '__cached__': None, 'name': ' ', 'age': 18, 'info': <function info at 0x0000012535A35EE0>}
3.3 vars(object)関数を使用して指定した範囲内のすべての変数を取得する
使用形式は次のとおりです.
vars([object])
以上のフォーマットの説明に対して、
vars()
:Pythonの内蔵関数です.[object]
:オプションのパラメータ.objectパラメータを書かないで、vars()とlocals()の役割は完全に同じです.例を次に示します.
# Person
class Person:
#
name = ' '
age = 18
print(vars()) # object , locals() 。
print('----------------------------')
print(vars(Person)) # object
実行結果:
{'__name__': '__main__', '__doc__': None, '__package__': None, '__loader__': <_frozen_importlib_external.SourceFileLoader object at 0x000001C00F7E0880>, '__spec__': None, '__annotations__': {}, '__builtins__': <module 'builtins' (built-in)>, '__file__': 'D:/Data/ProfessionalSkills/Python/PycharmProjects/demo/demo.py', '__cached__': None, 'Person': <class '__main__.Person'>}
----------------------------
{'__module__': '__main__', 'name': ' ', 'age': 18, '__dict__': <attribute '__dict__' of 'Person' objects>, '__weakref__': <attribute '__weakref__' of 'Person' objects>, '__doc__': None}
【友情リンク】
微信公衆番号:私たちのジェイ
ブログ
【参考資料】
Python公式サイト
Python 3.8.2 documentation