記事ディレクトリ
08Python関数クラスとオブジェクト
1.機能
1.機能の定義
def 函数名 (参数列表):
函数体
return 返回值列表
パラメータリストは0、1、またはそれ以上にすることができ、複数のパラメータはコンマで区切ります
2.関数呼び出し
函数名(实参)
3.ヒント
関数定義でパラメータの種類を指定する必要はなく、インタプリタが自動的に推測します。
戻り値の種類を指定する必要はありません。明確な戻り値がない場合、デフォルトの戻り値はnoneです。
print()を使用して空白行を印刷できます
4.パラメーターの受け渡しとパラメーターのデフォルト値
def dup(str,times=2): #给出了一个默认值
print(str*times)
Pythonは、オプションのパラメーターはオプション以外のパラメーターの後に配置する必要があると規定しています。
5.関数の戻り値
1つ以上の値を返すことができます。戻り値は、変数、式、
または戻り値なしのいずれかです。
6.lamada関数(簡潔なコードの使用法)
ラマダ予約語は、匿名関数(ラマダ関数とも呼ばれます)を定義するために使用されます。
匿名関数には名前はありませんが、関数の結果として関数名を返します。
匿名関数の定義は、通常の関数として次の形式に相当します。
def 函数名 (参数列表):
return 表达式
簡単に言えば、ラマダ関数は、1行で表すことができ、関数タイプを返す単純な関数を定義するために使用されます
f=lamada x,y: x+y#返回x+y的值
lamada関数の機能:
コードを単純化しますが、読みやすさを低下させます。効率を上げない
匿名関数を定義します。lamada関数なしで達成できる場合は……in……に使用できる場合。lamada関数を使用する場合は、関数にループを含めないでください。その場合、完了する関数を定義することをお勧めします
7.可変パラメーター転送(転送されたパラメーターの可変数)
def <函数名> (<参数> ,*b):
函数体
返回值
* bは自分で定義した変数の名前で、bは何でも呼び出すことができます
8.グローバル変数とローカル変数
2.クラスとオブジェクト
pythonのオブジェクトの概念は非常に広く、すべてをオブジェクトと呼ぶことができますが、必ずしも特定のクラスのインスタンスである必要はありません。辞書、文字列、リスト、タプルなどの組み込みデータタイプはすべて、構文と使用法が完全に似ています。
といった:
"abc".split()
1.クラスの定義
class 类名:
方法定义
2.クラスオブジェクト
クラスオブジェクトは、属性参照とインスタンス化の2つの操作をサポートします。
属性参照の標準構文は、Pythonのすべての属性参照と同じです。obj.name
クラスオブジェクトが作成されると、クラス名前名のすべての名前が有効な属性名になります。