Jython-functions

提供:Dev Guides
移動先:案内検索

Jython-関数

複雑なプログラミングロジックは、関数と呼ばれる独立した再利用可能なステートメントブロックに分割されます。 Pythonの標準ライブラリには、多数の組み込み関数が含まれています。 def キーワードを使用して独自の関数を定義することもできます。 関数のユーザー定義名の後には、本体を形成するステートメントのブロックが続き、returnステートメントで終了します。

定義されると、任意の環境から何度でも呼び出すことができます。 ポイントを明確にするために、次のコードを考えてみましょう。

#definition of function
defSayHello():
   "optional documentation string"
   print "Hello World"
   return

#calling the function
SayHello()

関数は、呼び出し環境から1つ以上のパラメーター/引数を受け取るように設計できます。 このようなパラメーター化された関数を呼び出す間、関数定義で使用される同様のデータ型で同じ数のパラメーターを提供する必要があります。そうでない場合、Jythonインタープリターは TypeError 例外をスローします。

#defining function with two arguments
def area(l,b):
   area = l*b
   print "area = ",area
   return

#calling function
length = 10
breadth = 20
#with two arguments. This is OK
area(length, breadth)
#only one argument provided. This will throw TypeError
area(length)
  • 出力*は次のようになります-
area = 200
Traceback (most recent call last):
   File "area.py", line 11, in <module>
   area(length)
TypeError: area() takes exactly 2 arguments (1 given)

定義されたステップを実行した後、呼び出された関数は呼び出し環境に戻ります。 関数の定義内でreturnキーワードの前に式が記述されている場合、データを返すことができます。

#defining function
def area(l,b):
   area = l*b
   print "area = ",area
   return area

#calling function
length = 10
breadth = 20
#calling function and obtaining its reurned value
result = area(length, breadth)
print "value returned by function : ", result

上記のスクリプトをJythonプロンプトから実行すると、次の出力が取得されます。

area = 200
value returned by function : 200