python反射怎麼用

2022-07-17 09:24:09 字數 2289 閱讀 2889

反射: 通過字串的形式對 物件 進行增刪改查

class

a(object):

def__init__

(self):

self.name = "

sath

"def

get(self):

print("

get"

)a =a()

setattr(a,

"age", 37)#

setattr(object, attribute, value) ===> object.attribute = value

print

(a.age)#37

print

(dir(a))['

__class__

', '

__delattr__

', '

__dict__

', '

__dir__

', '

__doc__

', '

__eq__

', '

__format__

', '

__ge__

', '

__getattribute__',

'__gt__

', '

__hash__

', '

__init__

', '

__init_subclass__

', '

__le__

', '

__lt__

', '

__module__

', '

__ne__

', '

__new__',

'__reduce__

', '

__reduce_ex__

', '

__repr__

', '

__setattr__

', '

__sizeof__

', '

__str__

', '

__subclasshook__

', '

__weakref__',

'age', '

get', '

name

']  # 可以發現在a這個物件的空間中新加了乙個屬性"age"

class

a(object):

def__init__

(self):

self.name = "

sath

"def

get(self):

print("

get"

)a =a()

ret = getattr(a, "

name

", "

laowang")

getattr(object,

"attribute

", default) #

從你那個物件中反射某個屬性或方法, 反射不到的話使用預設值

print

(ret)

#sath

class

a(object):

def__init__

(self):

self.name = "

sath

"def

get(self):

print("

get"

)a =a()

ret = hasattr(a, "

name

") #

判斷乙個物件是否有某個屬性或方法, 返回乙個布林值

print

(ret)

#true

class

a(object):

def__init__

(self):

self.name = "

sath

"def

get(self):

print("

get"

)a =a()

print

(dir(a))

delattr(a,

"name

") #

刪除物件的某個屬性

print(dir(a))

setattr應用例項-restframework中的modelviewset

用python怎麼讀檔案 python怎麼讀檔案

python怎麼讀檔案?首先,在桌面上建立乙個txt文件,在上面輸入以下內容 你好。hello.abcdefg 啊不錯的風格 推薦 python教程 檢視檔案的屬性,獲取檔案的絕對路徑 d hintsoft hint w7 desktop 檔名是 新建文字文件.txt,用python開啟這個檔案,並...

用python畫小黃人 怎麼用python畫小黃人

怎麼用python畫小黃人?前言 還記得小黃人哪只蠢萌蠢萌的單眼小黃人?就是喜歡做什麼事都喜歡逞能的那只,下面用python來實現一下,正在逃跑的小黃人。一 匯入turtle庫 import turtle as tt.pensize 4 t.speed 10 設定畫筆的大小 畫圖的速度,可以改變量值...

python控制項 python控制項怎麼用

標籤label 按鈕buttn 輸入框entry這些都是python的控制項,那麼他們如何使用呢?標籤label 可以顯示文字和點陣圖from tkinter import root tk root.minsize 300,200 text i want to study python label ...