ホームページ >バックエンド開発 >Python チュートリアル >Pythonでの関数定義方法 1/2ページ

Pythonでの関数定義方法 1/2ページ

WBOY
WBOYオリジナル
2016-06-16 08:47:181134ブラウズ

まず関数を定義しましょう:

コードをコピー コードは次のとおりです:

def foo():
print (' function')
foo()

上記のコードでは、foo という名前の関数が定義されています。この関数にはパラメーターがありません。コードの最後の行の機能は、この関数を呼び出すことです。これは関数の最も単純な形式です。パラメータ付きの関数を紹介しましょう:
コードをコピー コードは次のとおりです:

def foo():
print ('関数')
def foo1(a,b):
print(a+b)
foo()
foo1(1,2)

foo1これはパラメータ付きの関数であり、foo1(1,2) を使用してパラメータ付きでこの関数を呼び出すことができます。

プログラム中に変数がある場合、その変数のスコープが関係します。 Python では、変数のスコープは、グローバル、ローカル、非ローカルの 3 つのレベルに分割されます。

global: 名前が示すように、グローバル変数を表します。つまり、この変数は Python の最高レベルにあり、関数やクラスではなく、この変数の定義レベルが最高になります。
local: 関数で定義されたローカル変数。
非ローカル: これは相対的な概念です。 Python では、関数内に内部関数を入れ子にすることができるため、関数内の変数は、関数内の埋め込み関数に対して非ローカルになります。
以下に、関連するプログラムを示します。まず、グローバル変数とローカル変数を確認します。
コードをコピーします。 コードは次のとおりです。

x = 1
y = 2
def foo(x):
print(x)
print(y)
print('**** ****** **')
x = 3
グローバル y
y = 3
print(x)
print(y)
print('*** ******* **')
foo(x)
print(x)
print(y)

#*********** ******* ******
#実行結果
1
2
****************
3
3
***** ******
1
3

上記のプログラムでは、2 つのグローバル変数 x と y が定義されており、関数 foo 内では、ローカル変数 x も定義されています。実行結果によると、foo 内の変数 x は実際のローカル変数であることがわかります。これに加えられた変更はグローバル変数 x に影響を与えないためです。さらに、foo 内でグローバル変数を使用する必要がある場合は、global キーワードを使用する必要があります。グローバル y の目的は、変数 y を外部で宣言されたグローバル変数 y として宣言することです。したがって、foo 内の y を変更した後でも、foo の外側に影響を及ぼします。 foo はグローバル変数を変更するためです。
非ローカルをもう一度見てみましょう:
コードをコピー コードは次のとおりです:

def out():
z = 3
def inner():
非ローカル z
z = 4
print('inner function and z = {0}'.format(z))
inner( )
print('out function and z = {0}'.format(z))
out()
#**********
#実行結果
inner 関数と z = 4
out 関数と z = 4

現在の 1/2 ページ 12次のページ
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。