01.11 - 對(duì)象增刪改

python中對(duì)象的屬性支持增刪改查

p1 = Ql_Person('小花')
p2 = Ql_Person('小紅')

查:對(duì)象.屬性 或者 getattr(對(duì)象,屬性名: str)

  • print(p1.name) # 屬性不存在的時(shí)候,會(huì)報(bào)錯(cuò)
  • print(getattr(p1, 'name1', None)) # 屬性不存在的時(shí)候,若給屬性賦類值,就返回默認(rèn)值,否則報(bào)錯(cuò),當(dāng)不確定屬性值的時(shí)候,就這樣使用
    print('='*20, '查', '='*20)

增/改

  • 對(duì)象.屬性 - 當(dāng)屬性不存在的時(shí)候增加屬性,當(dāng)屬性存在的時(shí)候修改屬性
  • setattr(對(duì)象, 屬性名, 值)
    若要約束當(dāng)前類的對(duì)象有哪些屬性,避免錯(cuò)誤添加屬性
    slots = ('name', 'color') ,寫在init上面,但是有很多坑,最好不用
    p1.name = 'xiaohua'
    # p1.height = 180 屬性被約束類
    setattr(p1, 'age', 18) # 若屬性已經(jīng)有,則修改
    setattr(p1, 'weight', 200) # 若屬性不存在,則添加
    print(p1.name, p1.height, p1.age, p1.weight)
    print('='*20, '增/改', '='*20)

刪: del 對(duì)象.屬性 或者 delattr(對(duì)象,屬性名)

del p1.weight
delattr(p1, 'height')
print('')
print('='*20, '刪', '='*20)

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 一、快捷鍵 ctr+b 執(zhí)行ctr+/ 單行注釋ctr+c ...
    o_8319閱讀 6,044評(píng)論 2 16
  • 一、面向?qū)ο缶庉?編程思想:1.面向過程編程 ---> 算法,邏輯(數(shù)學(xué)邏輯) 2.函數(shù)式編程 ---> 函數(shù),...
    大漠判官1閱讀 334評(píng)論 0 0
  • 一、面向?qū)ο缶幊叹幊趟枷耄?.面向過程編程 ---> 算法,邏輯(數(shù)學(xué)邏輯)2.函數(shù)式編程 ---> 函數(shù),模塊3...
    Smr_T閱讀 580評(píng)論 0 0
  • 初識(shí)面向?qū)ο?楔子 你現(xiàn)在是一家游戲公司的開發(fā)人員,現(xiàn)在需要你開發(fā)一款叫做<人狗大戰(zhàn)>的游戲,你就思考呀,人狗作戰(zhàn)...
    go以恒閱讀 1,003評(píng)論 0 6
  • 研磨,細(xì)數(shù)記憶繽紛舞動(dòng)的流蘇,提筆,記下流年斑駁而去的光影,恍然間,我暈?zāi)菍懽鳙@獎(jiǎng)的那一刻悄然浮現(xiàn)在腦海,像...
    小曹皓月閱讀 954評(píng)論 0 1

友情鏈接更多精彩內(nèi)容