每個程式都有乙個入口函式,一般都是延續c語言的風格從mian函式開始,至於在呼叫main函式之前發生的事情,我們不用關心,編譯器幫我們做了。
在python語言中,直接用一條__name__ == '__main__'語句就可以拿到我們編寫程式的起點,如下:
if__name__ == '
__main__':
print("
test
")
但是,如果不按照上面用__name__ == '__main__',直接寫函式
defline_func(a, b):
deffunc(x):
return a*x +b
return func
執行發現沒執行到。如果這個檔案裡有直接寫語句,比如
defline_func(a, b):
deffunc(x):
return a*x +b
return
func
line1 = line_func(2, 5)
print(line1(2))
執行時,就會從line1= 這一行開始了。
至於出現上面這種現象的原因,是有庫檔案_pydev_execfile.py引起的,在18行有這麼個語句
exec(compile(contents+"\n", file, '
exec
'), glob, loc)
在乙個檔案,我們可以隨便寫處理業務的語句,比如求和
a=1b=2c=a+b
如果遇到很多地方要用求和,就可以把上面的語句封裝成乙個函式,那樣就可以一次實現,多處呼叫,看上去也會**簡潔。定義函式很簡單,使用def,後面跟個函式名稱,xiaomao,xiaogou都行,就像取名字一樣,最好使用能看函式名就知道函式幹啥的名字。比如:
defadd(a, b):
return a+b
c = add(1, 2)
(c)c = add(2, 2)
print(c)
那既然函式已經可以把我們的業務封裝起來了,要類來做啥呢?
類(class)是物件導向程式設計(oop,object-oriented programming)實現資訊封裝的基礎。類是一種使用者定義型別,也稱類型別。每個類包含資料說明和一組運算元據或傳遞訊息的函式。類的例項稱為物件。 類是對現實生活中一類具有共同特徵的事物的抽象。編寫類時,你可以定義一大類物件都有的通用行為。 基於類建立物件時,每個物件都自動具備這種通用行為,然後可根據需要賦予每個物件獨特的個性。
比如上面定義了乙個加法的函式,然後我們再定義一些減法函式,乘法函式,除法函式,冪函式,階乘函式等。這個時候我們就可以來定義乙個類,取名為演算法類
classalgorith():
defadd(self, a, b):
return a +b
defminus(self, a, b):
return a -b
#建立algorith的例項
my_algo =algorith()
print(my_algo.add(1,2))
my_algo可以呼叫類中的方法,如add,minus。當然也可以例項化多個物件,相互是獨立的。我們可以把乙個類 寫在乙個.py檔案,在其他檔案中只要把這個檔案import進來就能呼叫了。
假如要寫乙個關於動物的程式,有貓,有狗。那麼可以定義乙個cat類,乙個dog。但貓是咪咪叫,狗是吠,
speak(叫)這個方法就有了不同的實現內容,放在不同類中取相同的方法名完全合法合規。但是在乙個檔案有兩個一樣的函式就會發生衝突,後面寫的會把前面
寫的覆蓋掉,so分別寫在不同類中就沒這種煩惱。
class那麼,方法跟函式區別在哪呢?cat():
defspeak(self):
print("貓叫"
)
defwalk(self):
print("
貓步走"
)
defeat(self):
print("吃魚"
)class
dog():
defspeak(self):
print("狗吠"
)
defwalk(self):
print("蹦跳"
)
defeat(self):
print("吃肉"
)my_cat =cat()
my_cat.speak()
my_dog =dog()
my_dog.speak()
在類中的方法跟函式的寫法一樣,放在類中就叫方法,不在類中就叫函式。即類中的函式叫方法,函式的一切適用於方法。
以上如果不足之處,敬請指正。
小學生學python(三)
這一節主要講序列,包含三種 字串,列表,元組。1 字串 就是一系列字元。比如 this is string this is string 這是字串 這是字串 給乙個變數賦值並列印出來 name this is string print name this is string這個字串是儲存在記憶體的棧...
python 小學生教材全解 小學生教材全解
秘密 2020年十大小學助教!第一名是意料之中的!本文不廢話,直接進入正題!公布名單!2020年十大小學助教 no.1 尖刀俠 小學英語語法學霸狂記 英語 no.2 薛金星 小學教材全解 語文 no.3 小學數學公式定律全解詞典 數學 no.4 名校學霸尖刀卷 英語 no.5 53天天練 語文 no...
python練習 小學生練習運算
小學生算術能力測試系統 設計乙個程式,用來實現幫助小學生進行百以內的算術練習,它具有以 下功能 提供10道加 減 乘或除四種基本算術運算的題目 練習者根據顯示的題目輸入自己的答案,程式自動判斷輸入的答案是否 正確並顯示出相應的資訊。import random count 0 right 0 whil...