python的class
Ⅰ 關於python中class問題
亂七八糟的,看著費勁。把原題貼出來看看,這個是你自己理解的寫的吧。看著太費勁了...
Ⅱ python什麼時候需要用class舉例說明
def相當於每個組員,他們分別能完成一定的功能。
class相當於辦公室,他可以將旗下組員定義起來,方便調用。
在使用某些庫或者編寫大程序的時候,class是比較好用的,很簡單的程序自然用不上啦。
Ⅲ 在python中,一個文件中寫兩個class,怎麼連接這兩個class
classCandy(object):
defeat(self):
return"Hah! "
classChild(object):
def__init__(self,name):
self.name=name
defcall(self,shout):
returnshout=="HI,%s."%self.name
defeat(self,candies):
forcandyincandies:
print"Ya!"+candy.eat()
baby=Child("Tom")
baby.call("HI,Tom.")
candies=[Candy(),Candy(),Candy()]
baby.eat(candies)
Ⅳ python3,<class,XX>
list是python的一種類型關鍵字,不建議作為變數名!!!
你如果定義了global list,那list就是一個全局變數,可以在函數外訪問
你如果去掉了global list,那list默認就是一個Python內置的類型關鍵字
print(list)
<class'list'>代表的是這個未實例化的類對象
print(int)
<class'int'>你還可以繼續試試這個int類型
Ⅳ python class的問題
這個程序沒有遵從python的慣例,所以可能對你的理解產生一些問題。
__init__(b, c)和d(b)是class A的方法,按照慣例,第一個參數應該寫為self,因為類在調用它的方法的時候會自動把實例作為第一個參數傳到它的方法。所以,第一個參數b,其實調用時候的class A的實例。
b.c = c,其實就是給當前實例添加一個屬性c,c就是傳進來的參數
同理,d()函數的第一個參數當然可以是其他,只是代表當前實例而已
for循環中它是循環初始化時傳進來的參數,因為在初始化時把該參數記錄到了屬性c中,所以是b.c
所以,class A改寫為如下代碼,可能你就明白了
classA(object):
def__init__(self,c):
self.c=c
defd(self):
foreinself.c:
printe
第九行就是為了獲得class A的實例,所以傳入初始化參數['一', '二', '三', '四']來初始化以獲得實例
因為之前說過了,class中的方法第一個參數是會自動傳入為當前實例,所以調用時第一個參數是不需要傳的,因此調用d()函數時,不需要帶參數
這個程序只是定義了一個類A,它初始化是需要傳入參數c,並且參數c是可以循環的。類A提供了方法d,用來列印參數c的內容
之後的幾行代碼只是實例化了類A,並進行了方法調用而已
Ⅵ python中 A=ClassA() ClassB(A) 這是什麼意思
A=ClassA()是把類ClassA的實例賦值給變數A
ClassB(A)意思是類ClassB繼承類ClassA的方法和屬性。就是類的繼承。實例A是類ClassA的實例。而類ClassB繼承了類ClassA的屬性和方法。
Ⅶ python裡面怎麼調用class
以下代碼調試通過:
classLuciaClass:#定義類
defluciaprint(self,text):#類裡面的方法
print(' ',text)#方法就是輸出text
x=LuciaClass()#方法的實例x
x.luciaprint('todayisabadday~~~')#實例調用類方法
運行效果:
Ⅷ python class有什麼用
定義類啊,然後再把類實例化為對象,面相對象的需要,一切都是對象。這就是精髓。
Ⅸ python中class.函數()和class.函數 的區別是什麼
a.printname:這僅僅指的是函數名,Print的是與函數相關的一些屬性,如存放地址。
a.printname():這指的是函數調用,這個才是真正調用/執行了函數。但printname()沒有返回值,所以Print後的結果是none (none前面應該有一行:class1name hello才對,因為printname()被調用執行了。)
Ⅹ python 類裡面的class是什麼意思啊求
python這方面很靈活。其實java也一樣允許這樣子。你幾乎可以在任何情況下做任何事情。
通常class Meta可以放在外面。不過,這樣它就不能直接訪問父類的一些屬性了。
所以在python里class 如果放在另一個class 裡面,通常並不是為了隱藏這個class,並不是讓別人看不到它。而因為它需要父類里的一些屬性。需要共享。
另外直接在類里定義的一些變數,比如queryset,也是屬於類全局級的。只要引用了這個類,即使沒有初始化,這些變數也已經實例化。這個有些象是java里static的全局定義結果。
我們通常用這個方法來在不同的函數變數間共享 一部分數據。同時又不需要初始化一個實例並用指針指向這一部分數據。而是通過類名直接引用。
比如下面的一個用法
class Config:
pass
Config.user_name="xxx"
Config.password="yyyy"
這樣。只要你在當前模塊里,通過Config就可以引用到user_name和password,而不需要global這個修飾符。