一起入門python6之函式

2022-03-29 00:07:44 字數 1403 閱讀 1981

今天我們來學習新的一篇吧,那便是「函式

(function)

」我們用def來定義乙個函式,以案例說話。

>>> def name(x):          #定義乙個「name」的函式

...     print x + ",是乙個帥哥!"       #加號就當作乙個連線符了,連線x跟後面的字串

...>>> name("二狗哥")

二狗哥,是乙個帥哥!

>>>

>>>#求三角形面積。

>>> def sanjiaoxing(di,gao):

...     s = di * gao / 2

...     return s

...>>> sanjiaoxing(31,54)

837>>>#再來乙個小案例教大家認識一下啥事區域性作用於跟全域性作用域,其實跟別的語言一樣,就是全域性變數跟區域性變數而已。

>>> a = 2

>>> b = 4

>>> def test(b):

...     test = a * b

...     return test          #return是返回的意思,返回test

...>>>#大家猜一下輸出多少?

>>> print test(12)

24>>>#def 裡面的是叫做區域性變數,而def外面的是全域性變數。區域性的只能在區域性用,當然了,區域性的也可以呼叫全域性的,但是全域性是不能呼叫區域性。所以列印出來是24,即2*12

>>>

>>> a = 2

>>> b =[12,23]

>>> def test(a,b):

...     a = 5

...     b[0] = 45

...     print a,b

...>>> test(a,b)

5 [45, 23]

>>>#上面的乙個案例你明白了嗎?明白了的話,那就是真的懂了。

再給大家傳授乙個函式。那便是lambda函式

lambda只是乙個表示式,函式體比def簡單很多。其主體是乙個表示式,而不是乙個**塊。僅僅能在lambda表示式中封裝有限的邏輯進去。

lambda是起到乙個函式速寫的作用。允許在**內嵌入乙個函式的定義。

用lamdba會比def定義的函式來的簡單多。來看一下下面的案例。

>>>def python(x,y,z):

.......     return x+y*z

.......

>>>python(1,2,3)

7如果用lambda的話是這樣的

>>>s = lambda x,y,z:x+y*z  #直接一行就解決了,有沒有很高效,在程式設計中能用一行解決的,就絕對不要用多行解決。

7>>>

函式的話相對還是比較簡單,大家有不會的就盡量問。

和孩子一起學python(6)

重灌系統 1.raspi 國內映象 2.安裝imager1.5 也在映象目錄 並啟用,非常簡單,選檔案和sd碟符,按write,自動格式化,寫入並校驗。全程大約3 5分鐘。3.配置wifi和ssh,4.putty 後所有配置可以在 sudo raspi config下完成,先配置vnc,注意需要配置...

一起入門python7之函式引數

上一節課簡單的講了一下函式。那麼今天來給大家講一下函式引數。用案例說話哈。上一節課只是讓大家有比較簡單的了解,那麼這節我們來細化一下哈。def hello x 這裡的x就是引數 return x hello 2 自動將x 2帶入x x當中去計算了。故得四。4 大家想一下,倘若是次方的該怎麼辦?比如x...

一起入門python5之for迴圈

昨天中午本來寫了的,結果手賤了一下ctrl x以後又去複製了別的東西。結果所有寫的都沒有了。蛋疼。繼續寫吧。今天來說for迴圈 即條件判斷 age 20 首先將20賦值給age,通俗的說就是年齡二十歲。if age 18 如果大於等於十八就輸出你是成年人否則輸出第二條語句 print 你是成年人了 ...