Pythonの基本的な機能_

関数の基礎

目標

  • 経験速い機能
  • 基本的な機能を使用します
  • 関数のパラメータ
  • 関数の戻り値
  • ネストされた関数の呼び出し
  • モジュールで定義された関数

01.経験速い機能

  • いわゆる機能、すなわち、個々の機能を有するコードブロック必要なとき、小さなモジュールに編成を呼び出すこと
  • 機能を使用すると、二つのステップを含む:
    1.機能定義- パッケージ独立した機能
    2.関数呼び出しを-お楽しみパッケージの結果を
  • 役割機能は、プログラムの開発において、効率及びコード向上させることができる機能を使用して書かれた再利用

02.使用基本的な機能

関数の定義2.1

次のようにFormat関数は次のようになります。

def 函数名():

    函数封装的代码
    ……
  • DEF英語の略語が定義されて
  • 関数名が発現することができるべきである機能パッケージコード後続の呼び出しを容易にする機能を
  • 関数名の名前がなければならない識別子の命名規則に従ってください
    • それからなることができる文字、アンダースコアおよびデジタル組成
    • あなたは数字で始めることはできません
    • ユニークなキーワードでなければなりません

2.2関数呼び出し

関数名()によって、非常に単純な関数呼び出しは関数の呼び出しを完了するために

2.3最初の関数のウォークスルー

需要

  • 1.機能ポーク、ポークパッケージに3行のコードを書くsay_hello
  • 2.コール機能以下のコードを迎えます
name = "hello"

# 解释器知道这里定义了一个函数
def say_hello():
    print("hello 1")
    print("hello 2")
    print("hello 3")

print(name)
# 只有在调用函数时,之前定义的函数才会被执行
# 函数执行完成之后,会重新回到之前的程序中,继续执行后续的代码
say_hello()

print(name)
  • 関数、それがコードの一部をカプセル化のみその機能を定義した後に
  • 関数を呼び出すためのイニシアチブを取ることはありません場合は、機能が活発に行われていません

考えます

  • 関数定義の上方に配置された関数呼び出しはできますか?

    • することはできません!
    • ので、関数名の関数を呼び出す前に、我々は、Pythonはすでに機能を存在することが知られていることを確認する必要があります
    • 定義されていない名「say_hello」:それ以外の場合は、コンソールはNameErrorを促すメッセージが表示されます(名前の誤った:名前が定義されていないsay_hello)

2.4 PyCharmデバッグツール

  • 以上がF8ステップダイレクト関数呼び出しとして見コードをステップすることができるが、1行のコードを実行します
  • F7工程へは機能ならば、関数は内部に入るだろう、コードをステップ実行することができます

2.5ドキュメンテーションコメント機能

  • あなたが関数にコメントを追加したい場合は、開発では、使用して定義した関数以下でなければならない三つの連続引用符を
  • では3の連続した引用符にする間の機能のキャプションを書きます
  • 関数呼び出し位置を、ショートカットキーCTRL + Q情報は、機能の説明を参照
    ので:メモ機能が比較的独立している保持し、(コメントを含む)他の機能コード上に定義されるべきである2行の空白行を

03.関数のパラメータ

チュートリアルの需要

  1. sum_2_numの機能の開発
  2. この関数は2つのデジタル加算機能で達成することができる
    運動のコードは次のとおりです。
def sum_2_num():

    num1 = 10
    num2 = 20
    result = num1 + num2

    print("%d + %d = %d" % (num1, num2, result))

sum_2_num()

問題が存在するかについて考えてみよう

函数只能处理 **固定数值** 的相加

どのように解決するには?

  • あなたがうまく内部関数に渡された関数を呼び出すとき、数字を計算できるようにする必要がある場合は!

3.1関数のパラメータ

  • 関数名の後のカッコ内の塗りパラメータ
  • パーティション間で使用される複数のパラメータ
def sum_2_num(num1, num2):

    result = num1 + num2

    print("%d + %d = %d" % (num1, num2, result))

sum_2_num(50, 20)

パラメータの3.2役割

  • 機能コードブロックは、個々の機能持つ、必要なときに、小さなモジュールに編成を呼び出すために
  • 関数パラメータ、増加の機能汎用性のために、同じデータ処理ロジックができ、より多くのデータを収容します
    1. 関数内で引数として変数は、必要なデータ処理のために使用さ
    2. 関数として定義される関数呼び出し、パラメータの順序所望の機能内部のデータ処理、パラメータパッシング

そして、パラメータの引数3.3

  • パラメータ:の定義関数、括弧内の引数は、関数内で、使用されるパラメータを受信するために使用される変数として
  • 引数:呼び出し関数、パラメータの括弧は、の関数にデータを渡すために使用される内部の番号使用

04.関数の戻り値

  • プログラム開発は、時々 、お勧めします、関数が終了した後に実行され、呼び出し元に結果を伝える具体的な結果のためのフォローアップ治療を行うには、発信者のために、
  • 戻り値は、の関数である作業の完了最後の呼び出し元に結果
  • 機能で結果を返すためにreturnキーワードを使用します
  • 関数呼び出しパーティーがあり、変数を使用する受信機能が戻ります

    注意:リターンは、リターンを意味し、それ以降のコードは実行されません

def sum_2_num(num1, num2):
    """对两个数字的求和"""

    return num1 + num2

# 调用函数,并使用 result 变量接收计算结果
result = sum_2_num(10, 20)

print("计算结果是 %d" % result)

05.ネストされた関数呼び出し

  • 機能順番に呼び出すまで、別の機能をされ、ネストされた関数呼び出し
  • 関数TEST2場合、test1のコールが別の関数は
    、呼び出し元の関数test1のに実行され、test1のタスクを実行する最初の関数は、関数にTest1 test2は、フォローアップのコードの継続的な実施を呼び出すの位置に戻りますでしょう
def test1():

    print("*" * 50)
    print("test 1")
    print("*" * 50)

def test2():

    print("-" * 50)
    print("test 2")

    test1()

    print("-" * 50)

test2()

機能モジュールの使用06

Pythonモジュールは、プログラムのアーキテクチャの中核概念であります

  • モジュールが似ているキットは、このツールキットを使用するためには、それが必要である輸入インポートに、このモジュール
  • Pythonのソースコードファイルを拡張するPYで終わるそれぞれがあるモジュール
  • モジュール内で定義されているようにグローバル変数、関数が直接外部に使用することができるツールモジュールに提供されます。

6.1を使用するモジュール

  • あなたはかもしれPythonのファイルに定義された変数や関数
  • その後、別の文書のインポートを使用したが、このモジュールを導入します
  • インポート後、あなたはモジュール名を使用することができます。変数/モジュール名。ウェイ機能を、モジュールで定義された変数や関数を使用して

    モジュールが可能にこれまでに書かれたコードがあることやすい多重化!

6.2モジュール名は識別子であり、

  • 識別子が構成されてもよい、文字の下線、およびデジタル組成
  • あなたは数字で始めることはできません
  • ユニークなキーワードでなければなりません

注意:指定した名前のPythonのファイルで、場合数字で始まる PyCharmに、このモジュールではインポートできません

6.3 PYCファイル(理解)

Cは、コンパイルされたコンパイル済みの意味を

ステップ

  • プログラムのディレクトリを閲覧することができますpycacheのディレクトリを
  • Directoryはfile_name.cpython-XX.pycファイルを持っています、CPythonの-XXは、Pythonインタプリタのバージョンを示し
  • この文書は、PYC Pythonのインタプリタであるソースモジュールが変換されるバイトコード
    この保存Pythonのバイトコードは、スタートアップとして使用されている速度最適化

バイトコード

  • パイソンは、ソースプログラムの解釈の2つのステップに分割されている
    第一のソースコード、コンパイラは、バイナリを生成バイトコード
    と、その後、バイトコード、CPUによって認識することができる処理が生成されるマシンコードを
  • 場合は、プログラムの下で実行するモジュール、とバイトコードファイルの後、最後の保存バイトコードが何のソースコードを変更し、Pythonがコンパイルされたファイルをロードする.pycない、このステップをスキップします
  • 再コンパイルのPythonは、それが自動的にソースファイルとタイムスタンプのバイトコードファイルをチェックすると
    、あなたがソースコードを修正するために行く場合は、プログラムが実行される次回は、バイトコードは自動的に再作成されます

Pythonモジュールは、プログラムのアーキテクチャの中核概念であります

おすすめ

転載: blog.51cto.com/tobeys/2439965