Python_從零開始學習_(19) 函式基本使用
阿新 • • 發佈:2018-12-12
1. 函式的快速體驗
- 所謂函式, 就是把 具有獨立功能的程式碼塊 組織為一個小模組, 在需要的時候 呼叫
- 函式的使用包含兩個步驟:
- 定義函式 ---- 封裝 獨立的功能
- 呼叫函式 ---- 享受 封裝 的成果
- 函式的作用, 在開發程式時, 使用函式可以提高編寫的效率以及程式碼的 重用
演練 :
- 新建 函式 專案
- 複製 乘法表
- 修改檔案, 增加函式定義 multiple_table():
- 新建另外一個檔案, 使用 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 函式名():
函式封裝的程式碼
......
- def 是英文 define 的縮寫 (定義的意思) (ps : 和 js 裡面的 function 是一個意思)
- 函式名稱 應該能夠表達 函式封裝程式碼 的功能, 方便後續的呼叫
- 函式名稱 的命名應該 符合 識別符號的命名規則
- 可以用 字母 , 下劃線 和 數字 組成
- 不能以數字開頭
- 不能與關鍵字重名
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 可以檢視函式的說明資訊
注意: 因為 函式體相對比獨立, 函式定義的上方, 應該和其他程式碼 (包括註釋) 保留 兩個空行