天天看點

python的class類、子產品和包

#定義一個class
class test(object):

    #self為預設參數,代表class的對象本身
    def __init__(self, var):   #構造函數
        self.var = var    #self中定義的成員變量可在被class中的其他函數引用

    a = 1   #a被稱為屬性
    
    def get(self, a=None):  #get被稱為test對象的方法
        return self.var, a

    def __del__(self):  #析構函數
        del self.var


"""
使用對象内置的方法
1.執行個體化這個class (test)  t = test()
2.使用class.method()的方式去調用class的内置方法 



注意:當定義一個class的内置方法method時,method的參數的第一個永遠是self
"""

#類的調用
t = test("hello world")     #t是類test的一個執行個體
name, var = t.get(5)
print(name, var)



#類的繼承
class father(object):

    def __init__(self, name):
        self.name = name

class son(father):  #繼承father

    def get_name(self):
        return self.name

t = son("hello world")
print(t.get_name())      
#包和子產品     很像C語言中自己寫的一個.h和.c檔案

#子產品
#定義一個檔案myfunc.py
def func():
    return hello world

#在主檔案裡
import myfunc
print(myfunc.func())



#包      假設包的名字為mybocket     在包裡面先建立一個__init__.py檔案
#        然後在包裡面建立上面的myfunc.py檔案
import mybocket.myfunc  #引入包中的子產品
print(mybocket.myfunc.func())