# # 簡單函式介紹: 定義 形參 實參 傳參的4中方式 呼叫 return
# #1.函式定義 . python中函式必須先定義,再使用. 寫乙個函式前要空兩行,寫完後再空兩行.pycharm書寫
# # def 函式名(引數):
# # **1
# # **2
## #2.函式呼叫
# # 函式名(引數)
## #舉例:使用函式完成 1+2
# #定義函式
# def add():
# result = 1 + 2
# print(result)
## #函式呼叫.
# add()##
#3. 傳參. 例子需要函式接收使用者指定的數字.
# 函式呼叫的時候指定的數字+ 定義
#函式時接收的數字就是函式的引數.在定義函式時,定義接收使用者輸入的形式上的引數, 形參.在呼叫函式時,傳入真實的資料給形參. 真實資料就是實參
#舉例: 完成使用者指定的兩個數的和.
#定義函式.有形參
def add1(a, b):
#函式內部完成的操作
res = a + b
print(res)
#函式呼叫,並且傳入實參
add1(12, 56)
#3.1 傳參方式一: 位置引數.順序傳入
def student(name, age, ***, hobby,): #形參
print("名字:", name, "年齡:", age, "性別:", ***, "愛好:", hobby) #print函式中 sep預設空格,開分割多個物件
student("張三", 18, "男", "打球") #實參
#3.2關鍵字引數. (1)關鍵字引數不需要關心傳入引數的順序 (2)位置引數和關鍵字引數同時有,位置引數必須寫在前面
##書寫: 選擇其中一種,最好不要混寫.
def student2(name, age, ***, hobby,): #形參
print("名字:", name, "年齡:", age, "性別:", ***, "愛好:", hobby) #print函式中 sep預設空格,開分割多個物件
student2(name="張三",***="男", age=18, hobby="打球") #關鍵字引數順序可以和形參不同
#3.3預設引數. 在定義引數時,就為引數提供了預設值.
#(1)如果呼叫函式時,沒有傳入這個引數的值,那麼就使用這個引數的預設值
#(2)預設引數必須寫在最後
def student3(name, ***, hobby, age=18): #預設引數放在最後.
print("名字:", name, "年齡:", age, "性別:", ***, "愛好:", hobby)
student3("張三", "男", "打球")
#3.4 不定長引數.可變引數
#不能確定會傳入幾個引數.
#約定寫法. 當包裹位置引數傳遞時,寫為 *args
def student4(*args):
print(args)
#傳入的引數被args收集,將傳進的引數合併為乙個元組. args是乙個元組型別
student4("張三", 18, "男", "打球") #('張三', 18, '男', '打球') 列印結果是元組
# 當包裹關鍵字傳遞時,寫為: **kwargs.
def student6(**kwargs):
print(kwargs)
#關鍵字傳遞. kwargs是乙個字典.
student6(name="張三",***="男", age=18, hobby="打球") #
## #4.函式的返回值return. 本處可以是變數名,表示式,str等
# # .函式內部操作完成後,有乙個值res,函式操作只是列印這個值.如果想要使用這個值,就需要函式返回乙個值.return
# #不帶return的函式,返回值是none
# def add2(a, b):
# # 函式說明文件, 在函式內部,寫入一行注釋,
# "計算兩個數的加法"
# #函式內部完成的操作
# res = a + b
# return res
# #將值return完後.使用時有兩種方法:
# # 用乙個變數來接收return值.
# res2 = add2(12.4, 56) #順序: 先呼叫函式,然後吧return值賦值給res2 . 如果函式中沒有return值,會報錯
# print(res2)
# #用的時候直接呼叫傳參
# print("加法等於", add2(12.4, 56)) #本處也是先呼叫add方法
## #4.1 當乙個函式中有兩個return時.return相當於退出當前函式,導致return之後的**不會執行
# def add5(a, b):
# return a + b
# return a ** b #本行不會執行.
## #4.2當乙個函式需要有多個返回值時, return a, b.當return返回多個值時,預設是元組型別.
# #return 後面可以是int,str,字典,list,tuple.返回多個值##
# def test6():
# return 1, "好的", [12, 4]##
# print(test6()) #(1, '好的', [12, 4]) 預設元組型別
# #5.函式說明文件, 在函式內部,寫入一行注釋,在檢視函式說明文件時,使用 help(函式名)
# help(add2)
# #結果
# # help on function add2 in module __main__:
# ## # add2(a, b)
# # 計算兩個數的加法##
# #6.函式的巢狀呼叫: 乙個函式裡面呼叫了另乙個函式.
# #執行順序: 如果函式a中巢狀了函式b, 呼叫函式a時,先執行a的**.遇到a中巢狀的b時,執行b,b執行完成後再回到函式a執行的位置.##
# #舉例:列印直角三角形.5行
# #分析:迴圈巢狀. 內層迴圈每行*數, 外層迴圈行數+ 換行##
# def start_print():
# "列印乙個邊長為5的直角三角形"
# hang = 1
# while hang < 6:
# # 先寫子迴圈.迴圈變數
# start = 1
# while start <= hang:
# print("*", end="")
# # 迴圈變數發生變化
# start = start + 1
# print("\n", end="")
# hang = hang + 1##
# help(start_print) #檢視本函式的功能
# start_print() #函式呼叫
## #舉例:計算三個數的和##
# def sum2():
# #函式說明
# "使用者輸入3個數,並計算三個數的和"
# a = int(input("請輸入第1個數"))
# b = int(input("請輸入第2個數"))
# c = int(input("請輸入第3個數"))
# return a + b + c
## #函式呼叫.
# print("三個數的和是", sum2())
#舉例:計算三個數的平均值
QT呼叫python檔案(呼叫函式傳參)
pro檔案中 includepath i e miniconda3 include libs le miniconda3 libs lpython37 include define slots q slots include int main int argc,char ar 設定python檔案路...
Python 函式之函式定義 呼叫 傳參
函式是組織好的,可以被重複使用的,用來實現單一或相關功能的 塊。任何程式語言都提供了很多內嵌函式,同時還允許使用者自己定義想要的函式。本節主要講自定義函式。1 定義函式的規則 2 定義函式語法 語法 def functionname parameters 函式文件字串 即函式說明 function ...
python 函式傳參 傳參和傳引用
首先還是應該科普下函式引數傳遞機制,傳值和傳引用是什麼意思?函式引數傳遞機制問題在本質上是呼叫函式 過程 和被呼叫函式 過程 在呼叫發生時進行通訊的方法問題。基本的引數傳遞機制有兩種 值傳遞和引用傳遞。值傳遞 passl by value 過程中,被調函式的形式引數作為被調函式的區域性變數處理,即在...