測試時候類的調(diào)用是經(jīng)常會用到的。簡單看下類的調(diào)用使用的方法吧。
來看例子:
目錄結(jié)構(gòu):
我們現(xiàn)在要在do_class.py這個文件里調(diào)用class_learn.py里的類
代碼(do_class.py):
#!/usr/bin/env python3 #coding=utf-8 '''@Author:Jock''' from all_python_learn.class_and_funcation.class_learn import * b = Learn(1,2) b.get() print(Learn.a)
這里通過from導入了模塊class_learn里的類,然后通過類的實例化實例了一個b的對象,然后通過對象b調(diào)用了類里的get函數(shù)。這里我加了個print(Learn.a)就是想說直接通過類名接上變量名可以調(diào)用類的變量。
運行結(jié)果:
如果我們不實例化直接調(diào)用會有什么結(jié)果呢?來看看
修改do_class.py為:
如果這么寫那就報錯了,因為沒有實例化。
報錯:
上面的例子是帶傳入?yún)?shù)的類,也可以有不帶參數(shù)的類,然后被調(diào)用。
把class_learn.py改成下面:
在do_class.py就可以這么寫:
運行結(jié)果:
通過上面的例子基本知道怎么去調(diào)用類里的函數(shù)、類里的變量了(這個非常重要,寫用例時經(jīng)常會跨文件去訪問類里的屬性!!)
但我估計你們在看了上面代碼后對self比較疑惑,其實開始類的定義時有講過,這個是必須寫的,是類的實例。
例子里的初始化函數(shù)里的
self.x=x #這里的x和y就是實例變量 self.y=y
這是定義了兩個變量x和y,并賦給實例self.x和self.y,在后面的所有函數(shù)中如果要用到這個兩個變量,都需要通過self.x的寫法來調(diào)用,并且函數(shù)的參數(shù)列表必須帶有self,并且把實例傳了進去。否則調(diào)用就會報錯。
更多文章、技術(shù)交流、商務合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯(lián)系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
