Python 類的內建方法

2022-06-23 18:39:11 字數 1539 閱讀 4987

#

!/usr/bin/env python

#-*- coding:utf-8 -*-##

##python內建方法

class

a: n = "a"

deff2(self):

print("

from a")

class

b(a):

n = "b"

deff1(self):

print("

from b")

#def f2(self):

#print("f2 from b")

class

c(a):

n = "c"

deff2(self):

print("

from c")

class

d(b,c):

#def __new__(cls, *args, **kwargs):#初始化類中所有構造方法,如果這樣重寫了那麼就只會執行重寫的這個方法,需要再呼叫類中的其它方法就會報錯

#print("--new--")

def__init__

(self):

print("

__init__")

self.n = 4

def__call__(self, *args, **kwargs):

print("

__call__")

'''test doc

'''#

def __del__(self):#在程式執行完後會在記憶體中自動銷燬

#print("deleteing the ....")

pass

#1、繼承類的優先順序

#d = d()

#d.f1()

#d.f2()#按照先去找b,沒有的話再去找c,c沒有的話再去找a。按照廣度優先的原則

#在老版本中經典類按照深度優先,新式類按照廣度優先,但是在3.0後無論經典類還是新式類全都按照廣度優先,因此上圖雖然是經典類但是還是廣度優先

#2、類中的內建方法

#d = d()

#print(d.__doc__) #列印出類中的字串,可以用來註釋

#print(d.__module__)#列印模組所在的檔案的名字

#obj = d() #執行__init__

#obj() #執行__call__

#print(obj.__new__):#初始化類中所有構造方法,如果這樣重寫了那麼就只會執行重寫的這個方法,需要再呼叫類中的其它方法就會報錯

#print(obj.__dict__)#將類的成員變數以字典的形式列印出來,不會列印例項變數

#metaclasses 比new都還要底層的類,如果重寫類就用到,基本不會用到

#3、類的構造 類是由type構造的

#wohaoshuai = type("wohaoshuai",(),)

#print(type(wohaoshuai)) #

#a = wohaoshuai()

#print(a.test) #123

Python裡的方法

1 str 要把一個類的例項變成 str,就需要實現特殊方法 str ,因為 python 定義了 str 和 repr 兩種方法, str...

Python字串的方法

find和rfind如果有結果將返回大於等於0的結果,無結果則返回 1 另外index方法也可以返回子字串的位置,但是如果找不到會丟擲異常...

python 列表的方法

操作 函式使用方法 備註索引 index in example index creative 1 in example 1 creative 京東 ,996 賦值in example 1 commonplace 1 commonplace 京東 ,996 in example 2 國企 855 阿里...