Python函數入門示例詳解(定義+調用+參數)
作為Python入門的核心知識點,函數是實現(xiàn)代碼復用、邏輯解耦的關鍵。很多新手剛接觸函數時,分不清“定義”和“調用”的區(qū)別,對參數傳遞更是一頭霧水,導致寫出來的函數要么報錯,要么邏輯混亂。
今天就把Python函數拆解成“定義-調用-參數-返回值”四個核心模塊,搭配極簡代碼示例,新手跟著練,10分鐘就能掌握函數的基礎用法,輕松寫出可復用的代碼~
一、函數的核心概念:為什么要用函數?
函數就像“預先封裝好的工具”——把一段常用的代碼邏輯包裹起來,需要時直接“調用”,不用重復寫相同代碼。
比如:計算兩個數的和,寫一次求和函數,后續(xù)求任意兩個數的和,直接調用即可,無需重復寫a + b。
二、函數的基礎:定義與調用(最核心?。?/h2>
1. 函數定義(造工具)
語法格式:
def 函數名(參數列表):
"""函數說明文檔(可選,建議寫)"""
函數體(要執(zhí)行的代碼)
return 返回值(可選)
def:定義函數的關鍵字(必須有);- 函數名:符合變量命名規(guī)范(小寫+下劃線),見名知意;
- 參數列表:調用函數時需要傳入的數據(可選);
- 函數體:核心邏輯代碼(縮進4個空格,和def對齊);
return:返回函數執(zhí)行結果(可選,無return則返回None)。
2. 函數調用(用工具)
語法格式:函數名(傳入參數)
調用才會執(zhí)行函數體代碼,只定義不調用,函數永遠不會運行。
示例1:無參數、無返回值的函數
# 定義函數:打印歡迎語
def print_welcome():
"""打印歡迎信息"""
print("歡迎學習Python函數!")
# 調用函數(必須調用才會執(zhí)行)
print_welcome() # 輸出:歡迎學習Python函數!示例2:有參數、有返回值的函數
# 定義函數:計算兩個數的和
def add_num(a, b):
"""計算兩個數的和,返回結果"""
result = a + b
return result # 返回求和結果
# 調用函數,接收返回值
sum1 = add_num(5, 3)
print(sum1) # 輸出:8
sum2 = add_num(10.5, 20.3)
print(sum2) # 輸出:30.8三、函數的靈魂:參數傳遞(新手必懂4種參數)
參數是函數和外部交互的“接口”,新手重點掌握4種常用參數,覆蓋90%的使用場景。
1. 位置參數(最常用)
調用時按參數定義的順序傳入值,數量必須和定義一致。
# 定義:參數a、b為位置參數
def print_info(name, age):
print(f"姓名:{name},年齡:{age}")
# 調用:按順序傳入“張三”(對應name)、20(對應age)
print_info("張三", 20) # 輸出:姓名:張三,年齡:20
# ? 錯誤:參數數量不一致(少傳/多傳都會報錯)
# print_info("李四") # 報錯:缺少1個位置參數2. 默認參數
定義時給參數賦值,調用時可省略該參數(使用默認值)。
# 定義:age設置默認值18
def print_info(name, age=18):
print(f"姓名:{name},年齡:{age}")
# 調用1:省略age,使用默認值18
print_info("王五") # 輸出:姓名:王五,年齡:18
# 調用2:傳入age,覆蓋默認值
print_info("趙六", 22) # 輸出:姓名:趙六,年齡:22?? 避坑:默認參數必須放在位置參數后面!
3. 關鍵字參數
調用時指定參數名,無需按順序傳入,適合參數多的場景。
# 定義:3個位置參數
def print_info(name, age, gender):
print(f"姓名:{name},年齡:{age},性別:{gender}")
# 調用:指定參數名,順序可亂
print_info(gender="男", name="孫七", age=25) # 輸出:姓名:孫七,年齡:25,性別:男4. 可變長度參數(*args、**kwargs)
處理“不確定數量的參數”,新手常用在批量處理數據場景。
# *args:接收任意數量的位置參數,打包成元組
def sum_all(*args):
total = 0
for num in args:
total += num
return total
print(sum_all(1,2,3)) # 輸出:6
print(sum_all(10,20,30,40)) # 輸出:100
# **kwargs:接收任意數量的關鍵字參數,打包成字典
def print_detail(**kwargs):
for key, value in kwargs.items():
print(f"{key}:{value}")
print_detail(name="周八", age=30, address="北京")
# 輸出:
# 姓名:周八
# 年齡:30
# 地址:北京四、函數的返回值:return的用法
return會終止函數執(zhí)行(后面的代碼不會運行);- 一個函數可以返回多個值(用逗號分隔,返回時自動打包成元組)。
# 返回單個值
def get_max(a, b):
if a > b:
return a
else:
return b
print(get_max(10, 20)) # 輸出:20
# 返回多個值
def get_info():
name = "吳九"
age = 28
return name, age # 等價于返回 (name, age)
name, age = get_info() # 解包接收
print(name, age) # 輸出:吳九 28五、新手避坑指南
- 函數名不能重復(重復定義會覆蓋之前的函數);
- 縮進錯誤:函數體必須縮進(4個空格),否則報錯;
- 參數傳遞:位置參數必須在關鍵字參數前面;
- return位置:return寫在循環(huán)/條件里時,注意是否提前終止函數。
最后
函數的核心是“復用”和“解耦”,新手先掌握“定義-調用-位置參數-返回值”這四個基礎點,再逐步學習默認參數、可變參數。練習時可以把之前寫的代碼(比如文本統(tǒng)計、密碼生成)改造成函數,加深理解。
到此這篇關于Python函數入門詳解(定義+調用+參數)的文章就介紹到這了,更多相關Python函數入門內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
基于Python開發(fā)的學習通簽到數據統(tǒng)計工具
本文介紹的項目是一款面向學習通簽到數據的可視化統(tǒng)計工具,核心目標是解決學習通導出的簽到表格手動統(tǒng)計效率低、易出錯的問題,下面將詳細講解學習通簽到統(tǒng)計工具開發(fā)過程以及Python代碼完整實現(xiàn),需要的朋友可以參考下2026-01-01
使用pygame實現(xiàn)垃圾分類小游戲功能(已獲校級二等獎)
這篇文章主要介紹了使用pygame實現(xiàn)垃圾分類小游戲功能(已獲校級二等獎),本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-07-07

