Python函式講解

2021-09-07 06:48:13 字數 3180 閱讀 9185

在學習函式之前,一直遵循:面向過程程式設計,即:根據業務邏輯從上到下實現功能,其往往用一長段**來實現指定功能,開發過程中最常見的操作就是貼上複製,也就是將之前實現的**塊複製到現需功能處,如下:

while true:  

if cpu利用率 > 90%:

#傳送郵件提醒

連線郵箱伺服器

傳送郵件

關閉連線

if 硬碟使用空間 > 90%:

#傳送郵件提醒

連線郵箱伺服器

傳送郵件

關閉連線

if 記憶體占用 > 80%:

#傳送郵件提醒

連線郵箱伺服器

傳送郵件

關閉連線

定眼一看上述**,if條件語句下的內容可以被提取出來公用,如下:

def 傳送郵件(內容)  

#傳送郵件提醒

連線郵箱伺服器

傳送郵件

關閉連線

while true:

if cpu利用率 > 90%:

傳送郵件('cpu報警')

if 硬碟使用空間 > 90%:

傳送郵件('硬碟報警')

if 記憶體占用 > 80%:

對於上述的兩種實現方式,第二次必然比第一次的重用性和可讀性要好,其實這就是函式式程式設計和面向過程程式設計的區別:

函式式程式設計最重要的是增強**的重用性和可讀性

def

函式名(引數):

...

函式體

...

返回值

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

1、返回值

函式是乙個功能塊,該功能到底執行成功與否,需要通過返回值來告知呼叫者。

以上要點中,比較重要有引數和返回值:

def

傳送簡訊():

傳送簡訊的**...

if傳送成功:

return

true

else

:

return

false

while

true:

#每次執行傳送簡訊函式,都會將返回值自動賦值給result

#之後,可以根據result來寫日誌,或重發等操作

result =傳送簡訊()

if result ==false:

記錄日誌,簡訊傳送失敗...

函式的有三中不同的引數:

1、普通引數

#

######### 定義函式 #########

#name 叫做函式func的形式引數,簡稱:形參

deffunc(name):

print

name

########## 執行函式 #########

#'wupeiqi' 叫做函式func的實際引數,簡稱:實參

func('

wupeiqi

')

2、預設函式

def func(name, age = 18):  

print

"%s:%s

" %(name,age)

#指定引數

func('

wupeiqi

', 19)

#使用預設引數

func('

alex

')

注:預設引數需要放在引數列表最後

3、動態函式

def func(*args):  

print

args

#執行方式一

func(11,33,4,4454,5)

#執行方式二

li = [11,2,2,3,3,4,54]

func(*li)

def func(**kwargs):  

print

args

#執行方式一

func(name='

wupeiqi

',age=18)

#執行方式二

li =

func(**li)

def func(*args, **kwargs):  

print

args

print kwargs

擴充套件:傳送郵件例項

import

smtplib

from email.mime.text import

mimetext

from email.utils import

formataddr

msg = mimetext('

郵件內容

', '

plain

', '

utf-8

')

msg[

'from

'] = formataddr(["

武沛齊",'

[email protected]

'])

msg['to

'] = formataddr(["

走人",'

[email protected]

'])

msg[

'subject

'] = "主題"

server = smtplib.smtp("

smtp.126.com

", 25)

server.login(

"[email protected]

", "

郵箱密碼

")

server.sendmail(

'[email protected]

', ['

[email protected]

',], msg.as_string())

server.quit()

view code

python中split 函式講解

本文講述的是string.split s sep maxsplit 針對string型別的split 函式。它主要是切割字串,結果返回由字串元素組成的乙個列表,具體怎麼使用看下面的 1.無引數的情況 a my name is zhangkang b my nname nis nzhangkang c...

Python 函式中(詳細講解)

四 命名空間 五 遞迴函式 deffn deffn1 print hello world return fn1 r fn r 結果為 hello worlddeffn deffn1 print hello world return fn1 r fn print r 結果為 hello world n...

08Python學習函式講解

定義 函式是指將一組語句的集合通過乙個名字 函式名 封裝起來,要想執行這個函式,只需呼叫其函式名即可 特性 減少重複 使程式變的可擴充套件 使程式變得易維護 deffuncname v 定義函式名,形參.print v funcname hello 呼叫函式 hello正常情況下,給函式傳引數要按順...