日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

定义函数

發布時間:2025/3/15 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 定义函数 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
def mail():n = 123n += 1print(n)mail() f = mail f()
  • 函數式:將某功能代碼封裝到函數中,日后便無需重復編寫,僅調用函數即可
  • 面向對象:對函數進行分類和封裝,讓開發“更快更好更強...”

函數的定義主要有如下要點:

  • def:表示函數的關鍵字
  • 函數名:函數的名稱,日后根據函數名調用函數
  • 函數體:函數中進行一系列的邏輯計算,如:發送郵件、計算出 [11,22,38,888,2]中的最大數等...
  • 參數:為函數體提供數據
  • 返回值:當函數執行完畢后,可以給調用者返回數據。

1、返回值

函數是一個功能塊,該功能到底執行成功與否,需要通過返回值來告知調用者。

import smtplib from email.mime.text import MIMEText from email.utils import formataddr def mail():ret = Truetry:msg = MIMEText('郵件內容', 'plain', 'utf-8')msg['From'] = formataddr(["武沛齊", 'wptawy@126.com'])msg['To'] = formataddr(["走人", '424662508@qq.com'])msg['Subject'] = "主題"server = smtplib.SMTP("smtp.126.com", 25)server.login("wptawy@126.com", "郵箱密碼")server.sendmail('wptawy@126.com', ['424662508@qq.com', ], msg.as_string())server.quit()except Exception:ret = Falsereturn ret#返回值 ret = mail() if ret:print("發送成功") else:print("發送失敗")

一個函數里面沒有出現return 、默認返回的是none?

遇到return 函數內容就終結了

def show():print('a')return [11,22]print('b')ret = show() print(ret)
輸出:

a
[11, 22]

?參數:

import smtplib from email.mime.text import MIMEText from email.utils import formataddrdef mail(user):#形參ret = Truetry:msg = MIMEText('郵件內容', 'plain', 'utf-8')msg['From'] = formataddr(["武沛齊", 'wptawy@126.com'])msg['To'] = formataddr(["走人", '424662508@qq.com'])msg['Subject'] = "主題"server = smtplib.SMTP("smtp.126.com", 25)server.login("wptawy@126.com", "郵箱密碼")server.sendmail('wptawy@126.com', [user, ], msg.as_string())server.quit()except Exception:ret = Falsereturn ret#返回值 ret = mail('123456@qq.com')#實參 ret = mail('1234567@qq.com')#實參 ret = mail('12345678@qq.com')#實參 ret = mail('123456789@qq.com')#實參 if ret:print("發送成功") else:print("發送失敗")

?

#無參數 # show(): -- > show()#一個參數 """ def show(arg):print(arg) show("xiao") """#兩個參數 """ def show(arg,arga):print(arg,arga) show("xiao","long") """""" #默認參數,必須放在最后 def show(a1,a2=999):print(a1,a2)#show(111) show(111,888) """#指定參數 def show(a1,a2):print(a1,a2)show(a2 =123, a1=999)

?

def show(arg):print(arg)n =[11,22,33,44] show(n)

輸出:
[11, 22, 33, 44]

動態參數:

一個*號 轉換成元組

def
show(*arg):#轉換成元組print(arg,type(arg))show(11,22,33,44,55)

輸出:
(11, 22, 33, 44, 55) <class 'tuple'>

?

兩個*轉換成字典:

def
show(**arg):print(arg,type(arg))show(n1 = 78,n2 = 99,n3 = "candy")

輸出:

{'n1': 78, 'n2': 99, 'n3': 'candy'} <class 'dict'>

?

強強聯合:

#寫參數的時候一個*放在前面、兩個*放在后面
def show(*args,**kwargs):print(args,type(args))print(kwargs,type(kwargs)) #傳參數的時候也得按順序 show(11,22,33,44,n1=88,xiaolong = "candy")

輸出:

(11, 22, 33, 44) <class 'tuple'>
{'n1': 88, 'xiaolong': 'candy'} <class 'dict'>

?

注意:

def show(*args,**kwargs):
print(args,type(args))print(kwargs,type(kwargs))#show(11,22,33,44,n1=88,xiaolong='candy') l = [11,22,33,44] d = {'n1':88,'xiaolong':'candy'} #show(l,d) show(*l,**d)

輸出:

(11, 22, 33, 44) <class 'tuple'>
{'n1': 88, 'xiaolong': 'candy'} <class 'dict'>

?

?

字符串的格式化:
例:

s1 ="{0} is {1}" #result = s1.format("xiaolong","boy") l = ["xiaolong","boy"] result = s1.format(*l) print(result)

輸出:

xiaolong is boy

?

字符串的格式化: 例:
s1 = "{name} is {acter}" d ={'name':'xiaolong','acter':'boy'} #result = s1.format(name = "xiaolong",acter = "boy") result = s1.format(**d) print(result)

輸出:
xiaolong is boy

?

例:

def
func(a):b = a + 1return b result = func(99) print(result)#lambda表達式,簡單函數的表示方式 func = lambda a: a+1 #lambda a: a+1 是一個函數 #lambda 關鍵字 #a 形參 #: 函數:函數體 #a+1 執行,執行的結果自動加一個return值#>>>創建一個形式參數 #>>>創建了函數內容, a+1 并把,結果return ret = func(99) print(ret)

輸出:

100
100

?

#普通條件語句 if 1 == 1:name = "wupeiqi" else:name = "xiaolong" #三元運算 name = "wupeiqi" if 1==1 else "xiaolong"

?

轉載于:https://www.cnblogs.com/mrzuo/p/7118367.html

總結

以上是生活随笔為你收集整理的定义函数的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。