3 屬性查詢與方法

2021-09-26 19:49:21 字數 2158 閱讀 3201

屬性查詢

類有兩種屬性:資料屬性和函式屬性

1.資料屬性是共享的,資料屬性公用一塊記憶體

2.類的函式資料是繫結給物件用的,稱為繫結到物件的方法

class student:

mingzu='漢族' #資料屬性

def __init__(self,name,age,***): #函式屬性

self.name=name

self.age=age

self.***=***

def learn(self): #函式屬性

print('is learning')

def eat(self): #函式屬性

print('is eating')

def sleep(self): #函式屬性

print('is sleeping')

student1=student('張三',18,'male')

student2=student('李四',20,'male')

student3=student('王二丫',18,'female')

#資料屬性是共享的

print(id(student.mingzu)) #3070164795616

print(id(student1.mingzu)) #3070164795616

print(id(student2.mingzu)) #3070164795616

print(id(student3.mingzu)) #3070164795616

#函式屬性繫結到相應的物件

print(id(student.learn)) #2380961904432

print(id(student1.learn)) #2380959923400

print(id(student2.learn)) #2380959923400

print(id(student3.learn)) #2380959923400

繫結的方法

類中定義的函式(沒有被任何裝飾器裝飾的)是類的函式屬性,類可以使用,但必須遵循函式的引數規則,有幾個引數需要傳幾個引數

強調:繫結到物件的方法的特殊之處在於,繫結給誰就由誰來呼叫,誰來呼叫,就會將『誰』本身當做第乙個引數傳給方法,即自動傳值(方法__init__也是一樣的道理)

class student:

mingzu='漢族' #資料屬性

def __init__(self,name,age,***): #函式屬性

self.name=name

self.age=age

self.***=***

def learn(self): #函式屬性

print('%s is learning' %self.name)

def eat(self): #函式屬性

print('%s is eating' %self.name)

def sleep(self): #函式屬性

print('%s is sleeping' %self.name)

student1=student('張三',18,'male')

student2=student('李四',20,'male')

student3=student('王二丫',18,'female')

student1.learn() #等價於student.learn(student1)

student2.learn() #等價於student.learn(student2)

student3.learn() #等價於student.learn(student3)

student.learn(student1)

#執行結果:

# 張三 is learning

# 李四 is learning

# 王二丫 is learning

注意:繫結到物件的方法的這種自動傳值的特徵,決定了在類中定義的函式都要預設寫乙個引數self,self可以是任意名字,但是約定俗成地寫出self。

屬性查詢與繫結方法

類有兩種屬性 資料屬性和函式屬性 1 類的資料屬性是所有物件共享的 class luffystudent school luffycity def learn self print is learning def eat self print is sleeping 後產生物件 stu1 luffy...

類屬性與方法

類的私有屬性 private attrs 兩個下劃線開頭,宣告該屬性為私有,不能在類地外部被使用或直接訪問。在類內部的方法中使用時 self.private attrs。類的方法 在類地內部,使用def關鍵字可以為類定義乙個方法,與一般函式定義不同,類方法必須包含引數self,且為第乙個引數 類的私...

jQuery CSS屬性查詢與設定

css 方法設定或返回被選元素的乙個或多個樣式屬性。如需返回指定的 css 屬性的值,請使用如下語法 css propertyname 下面的例子將返回首個匹配元素的 background color 值 這是乙個段落。這是乙個段落。這是乙個段落。返回第乙個 p 元素的 background col...