目次
1つ:機能
1.1関数の作成と呼び出し
1)関数を作成する
関数の作成は定義関数とも呼ばれ、特定の目的を持つツールの作成として理解できます。
def functionname([parameterlist]):
["comment"]
[functionbody]
2)関数を呼び出す
functionname([parametersvalue])
1.2パラメータの受け渡し
1)パラメータ転送
実パラメータの種類に応じて、実パラメータの値を仮パラメータに渡す場合と、実パラメータの参照を仮パラメータに渡す場合の2つのケースに分けることができます。
その中で、実際のパラメータが不変オブジェクトの場合は値の転送が実行され、実際のパラメータが可変オブジェクトの場合は参照によって渡されます。実際、値を渡すと
参照渡しの基本的な違いは、値渡し後、仮パラメーターの値が変更され、実際のパラメーターの値が変更されないことです。参照渡し後、仮パラメーターの値と実際のパラメータが変更されます。
また、一緒に変更します。
2)位置パラメータ(通常)
数量は定義と一致している必要があります
場所は定義と一致している必要があります
3)キーワードパラメータ
キーワードパラメータとは、仮パラメータの名前を使用して入力パラメータの値を決定することを指します。実際のパラメータをこのように指定する場合、仮パラメータを使用する必要はありません。
位置はまったく同じです。パラメータ名を正しく入力するだけで済みます。
fun_bmi(height = 1.83,weight = 60, person = "路人甲")
4)パラメータのデフォルト値を設定します
関数を呼び出すときに、パラメーターが指定されていない場合、例外がスローされます。この問題を解決するために、パラメーターのデフォルト値を設定できます。つまり、関数が定義されている場合、
仮パラメータのデフォルト値を直接指定します。このように、パラメータが渡されない場合、関数の定義時に設定されたデフォルト値が直接使用されます。
5)可変パラメータ
可変パラメーターは可変長パラメーターとも呼ばれます。つまり、関数に渡される実際のパラメーターは任意の数にすることができます。
変数パラメーターを定義する場合、2つの形式があります。1つは*パラメーター、もう1つは**パラメーターです。
- *パラメータ:これはに任意の形態の受信と実際のパラメータの複数を表すタプルの
def printcoffee(*coffee):
for item in coffeename:
print(item)
- **パラメータ:このフォームは、キーワードパラメータのように明示的に割り当てられた実際のパラメータをいくつでも受け取ることを意味します。
そしてそれを辞書に入れます(例えばpymysql接続)
def printsign(**sign):
print()
for key, value in sign.items():
print(key,value)
1.3戻り値
関数本体のreturnステートメントを使用して、関数の戻り値を指定します。戻り値は任意のタイプにすることができ、関数のどこにreturnステートメントが表示されていても、
実行される限り、関数の実行を終了します。
1.4変数のスコープ
ローカル変数とは、関数内で定義および使用される変数を指します。これらは関数内でのみ有効です。つまり、関数内の名前は、関数の実行中にのみ作成されます。
グローバル変数とは、関数の内部と外部で機能する変数を指します。グローバル変数には、次の2つの状況があります。
1)関数本体の外部で定義された変数はグローバル変数です
2)関数本体に定義があり、globalキーワードで変更されます。
1.5匿名関数
匿名関数とは、関数が必要なときに名前のない関数を適用することを指しますが、わざわざ関数に名前を付ける必要はありません。
result = lambda[arg1,[,arg2]] :expression
import math
r = 10
result = lambda r:math.pi*r*r
print(result(r))
2:オブジェクト指向プログラミング
カプセル化継承ポリモーフィズム(Javaのオブジェクト指向に類似)
1)クラスの作成
2)__ init __()メソッド
3)デコレータ
4)メソッドの書き換え
3:モジュール
Pythonでは、拡張子が.pyのファイルはモジュールと呼ばれます
import bmi as m
或者
import bmi
或者
from bmi import fun_bmi
メインプログラムの形式でプログラムを実行します(最上位モジュールの__name__変数の値は__main__です)
if __name__ == '__main__':
一般的に使用される組み込みの標準モジュール
4.例外処理とプログラムのデバッグ
Pythonの一般的な例外
試してください...ステートメントを除く
使用する場合は、例外の原因となる可能性のあるコードをtryステートメントブロックに入れ、処理結果をexceptステートメントブロックに入れてください。
このように、tryステートメントブロックのコードにエラーがあると、exceptステートメントブロックのコードが実行されます。tryステートメントブロックのコードにエラーがない場合は、
その後、exceptステートメントブロックは実行されません
try:
division()
except ZeroDivisionError:
print("出错")
try ...... except ... elseステートメント
tryステートメントブロックに例外が見つからない場合に実行されるステートメントブロック。
試してみてください......例外......最後に
プログラムに例外があるかどうかに関係なく、finallyコードブロックのコードが実行されます
例外をスローするには、raiseステートメントを使用します
raiseステートメントは、関数またはメソッドで例外をスローします