1. 程式人生 > >Python_從零開始學習_(19) 函式基本使用

Python_從零開始學習_(19) 函式基本使用

1.  函式的快速體驗

  • 所謂函式,  就是把 具有獨立功能的程式碼塊 組織為一個小模組,  在需要的時候  呼叫
  • 函式的使用包含兩個步驟:
  1. 定義函式  ----  封裝 獨立的功能
  2. 呼叫函式  ----  享受 封裝 的成果
  • 函式的作用,  在開發程式時,  使用函式可以提高編寫的效率以及程式碼的 重用

演練 :

  1. 新建 函式 專案
  2. 複製 乘法表
  3. 修改檔案,  增加函式定義 multiple_table():
  4. 新建另外一個檔案, 使用 import 匯入並且呼叫函式

定義函式 :

def multiple_table():
    # 定義一個行變數
    row = 1
    # 第一個迴圈, 迴圈次數代表多少行數
    while row <= 9:
        # 定義一個列變數
        col = 1
        # 第二個迴圈, 代表每一行迴圈出來的內容
        while col <= row:
            print("%d * %d = %d" % (col, row, row * col), end="\t")
            col += 1
        print("")
        row += 1

引用函式 :

# 匯入工具包
import wk_01_九九乘法表
# 使用
wk_01_九九乘法表.multiple_table()

2.  函式的定義

定義函式的格式如下 :

def 函式名():
    
    函式封裝的程式碼

    ......
  1. def 是英文 define 的縮寫 (定義的意思) (ps : 和 js 裡面的 function 是一個意思) 
  2. 函式名稱 應該能夠表達 函式封裝程式碼 的功能,  方便後續的呼叫
  3. 函式名稱 的命名應該 符合 識別符號的命名規則
  • 可以用 字母 ,  下劃線 數字 組成
  • 不能以數字開頭
  • 不能與關鍵字重名

3.  函式的呼叫

呼叫函式很簡單,  通過  函式名() 即可完成對函式的呼叫

4.  第一個函式演練

需求

  • 1. 編寫一個 say_hello 的函式,  封裝一行打招呼的程式碼
  • 2.在函式下方抵用打招呼的程式碼
# 注意: 定義好函式之後, 只表示這個函式封裝了一段程式碼而已
# 如果不主動呼叫函式, 函式是不會主動執行的
# 程式碼規範函式上面要空兩行

name = "kkw"


def say_hello():
    print("hello world")


print(name)
# 只用在呼叫函式時,  之前定義的函式才會被執行
# 函式執行完成之後,  會重新回到之前的程式中,  繼續執行後續的程式碼
say_hello()

print(name)

# 執行結果 :
# kkw
# hello world
# kkw

用 單步執行 F8 和 F7 觀察以下程式碼的執行過程

  • 定義好函式之後,  只表示這個函式封裝了一段程式碼而已 (手機如果不用就是一堆殼子, 使用了才叫手機)
  • 如果不主動呼叫函式,  函式時不會主動執行的

思考 :

  • 能否將 函式呼叫 放在 函式定義 的上方?
  • 不能 !
  • 因為在 使用函式名 呼叫函式之前,  必須要保證 Python 已經知道函式的存在
  • 否則控制檯會提示 : 名字未定義的錯誤

5.  PyCharm 的除錯工具

  • F8 Step Over 可以單步執行程式碼,  會把函式呼叫看作是一行程式碼直接執行
  • F7 Step Into 可以但不執行程式碼,  如果是函式,  會進入函式內部

6.  函式的文件註釋

  • 在開發中,  如果希望給函式添加註釋,  應該在 定義函式 的下方, 使用 連續的三對引號
  • 在 連續的三對引號 之間編寫對函式的說明文字
  • 在 函式呼叫 位置,  使用快捷鍵 CTRL + Q 可以檢視函式的說明資訊

注意:  因為 函式體相對比獨立,  函式定義的上方,  應該和其他程式碼 (包括註釋) 保留 兩個空行