ホームページ  >  記事  >  バックエンド開発  >  Pythonの基本関数の紹介

Pythonの基本関数の紹介

高洛峰
高洛峰オリジナル
2017-03-17 16:32:391116ブラウズ

function の最も重要な目的は、同じプログラムの再利用を容易にすることです。

将来同じ操作を実装する場合は、すべてのステートメントを繰り返さずに関数名を呼び出すだけで済みます。

関数の定義

まず、この関数の機能を説明するために、関数を定義する必要があります。

def square_sum(a,b):
    c = a**2 + b**2
    return c

この関数の機能は、2 つの数値の二乗和を求めることです。

まず第一に、def、このキーワードは Python に「関数を定義しています」と通知します。 square_sum は関数名です。括弧内の

aとbは関数のパラメータであり、関数への入力です。複数のパラメーターを指定することも、まったく指定しないこともできます (ただし、括弧は保持する必要があります)。

ループと選択範囲での所属を示すコロンとインデントをすでに見てきました。

c = a**2 + b**2        # 这一句是函数内部进行的运算
return c               # 返回c的值,也就是输出的功能。Python的函数允许不返回值,也就是不用return。return可以返回多个值,以逗号分隔。相当于返回一个tuple(定值表)。
return a,b,c          # 相当于 return (a,b,c)

Python では、プログラムが return に達すると、プログラムは関数内の残りのステートメントの実行を停止します。 return は不要です。return がない場合、または return 後に戻り値がない場合、関数は自動的に None を返します。 None は Python の特別な データ型 で、何も表現しないために使用され、C の NULL に相当します。 None は、キーワード引数を渡すためのデフォルト値として主に使用されます。

関数の呼び出しとパラメータの受け渡し

関数を定義した後、後続のプログラムでこの関数を使用できます

print square_sum(3,4)

Pythonは位置を通じて3が関数定義に対応することを認識します最初のパラメータa、4 は 2 番目のパラメーター b に対応し、パラメーターは関数 square_sum に渡されます。

(Python にはキーワード転送、テーブル転送、辞書転送などを含む豊富なパラメータ転送メソッドがあります。基本的なチュートリアルでは位置転送のみを説明します)

関数は演算後に値 25 を返し、この 25 は次のように出力されます。印刷します。

次の 2 つの例を見てみましょう

a = 1
def change_integer(a):
    a = a + 1
    return a
print change_integer(a)
print a
#===(Python中 "#" 后面跟的内容是注释,不执行 )
b = [1,2,3]
def change_list(b):
    b[0] = b[0] + 1
    return b
print change_list(b)
print b

最初の例では、整数変数を関数に渡し、関数はそれを演算しますが、元の整数変数 a は変更されません。

2 番目の例では、テーブルを関数に渡し、関数が動作し、元のテーブル b が変更されます。

基本データ型の変数の場合、変数が関数に渡された後、関数はメモリ内の新しい変数をコピーするため、元の変数には影響しません。 (これを値転送と呼びます)

しかし、テーブルの場合、テーブルが関数に渡すのは、メモリ内のシーケンスの位置を指すポインタです。関数内のテーブルに対する操作は、元のメモリで実行されます。したがって、元の変数に影響を与えます。 (これをポインタの受け渡しと呼びます)

概要

def function_name(a,b,c):
    statement
    return something  # return不是必须的

関数の目的: プログラムの再現性を向上させます。

return None

パラメータを位置によって渡します。

基本データ型のパラメータ: 値によって渡されます

パラメータとしてのテーブル: ポインタによって渡されます


以上がPythonの基本関数の紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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