• <em id="ommgs"></em>
    <dd id="ommgs"><center id="ommgs"></center></dd>

    1. <em id="ommgs"><acronym id="ommgs"><u id="ommgs"></u></acronym></em>
      首 頁IT知識庫翔宇問吧收藏內容
      當前位置:翔宇亭IT樂園IT知識庫Python

      Python delattr()方法

      減小字體 增大字體 作者:本站  來源:本站整理  發布時間:2021-10-09 18:10:04

      微信搜索本站訂閱號:優雅的代碼。歡迎關注。
      優雅的代碼

      Python delattr()是Python的內置函數,其作用是刪除一個對象的指定屬性。

      語法格式

      delattr(object, name)

      參數

      object:某類的對象;

      name:字符串類型,代表對象的一個屬性名稱。

      返回值

      該函數沒有返回值

       

      使用舉例

      下面使用若干例子來說明delattr()函數的具體使用方法。

      class Student:
          id = '001'
          name = '丁濤'
          def __init__(self, id,name,age):
              self.id = id
              self.name = name
              self.age = age

      stu = Student('002', '丁當', 23)
      print(stu.name)
      print(Student.name)
      delattr(Student, 'name')
      print(stu.name)
      print(Student.name)

      輸出內容如下:

      丁當
      丁濤
      丁當
      Traceback (most recent call last):
        File "D:/PY/delattr.py", line 14, in <module>
          print(Student.name)
      AttributeError: type object 'Student' has no attribute 'name'
      從上面的輸出來看:

      刪除類的屬性name后,再次使用時會引發AttributeError錯誤。但未影響使用類定義的對象。

      class Student:
          id = '001'
          name = '丁濤'
          def __init__(self, id,name,age):
              self.id = id
              self.name = name
              self.age = age

      stu = Student('002', '丁當', 23)
      print(Student.name)
      print
      (stu.name)
      delattr(stu, 'name')
      print(Student.name)
      print(stu.name)

      輸出內容如下:

      丁濤
      丁當
      -------
      丁濤
      丁濤

      從上面輸出來看:

      當刪除了類對象的屬性后,如果類中有同名的屬性時,則使用類的屬性值。

      如果類中未定義對應的屬性,則會引發下面的錯誤:

      Traceback (most recent call last):
        File "D:/PY/delattr.py", line 16, in <module>
          print(stu.name)
      AttributeError: 'Student' object has no attribute 'name'

      如果一個類或類的對象沒有對應的屬性,將引發下面的錯誤:

      Traceback (most recent call last):
        File "D:/PY/delattr.py", line 12, in <module>
          delattr(Student, 'name')
      AttributeError: name

      使用del操作符刪除對象的屬性

      使用python的 del 操作符也可以刪除類的一個屬性,其語法格式如下:

      del className.attributeName

      看下面的例子:

      class Student:
          id = '001'
          name = '丁濤'
          def __init__(self, id,name,age):
              self.id = id
              self.name = name
              self.age = age

      stu = Student('002', '丁當', 23)
      print(Student.name)
      print
      (stu.name)
      del Student.name
      print(stu.name)
      print(Student.name)

      輸出內容如下:

      丁濤
      丁當
      丁當
      Traceback (most recent call last):
        File "D:/01Lesson/PY/delattr.py", line 25, in <module>
          print(Student.name)
      AttributeError: type object 'Student' has no attribute 'name'

       從輸出來看,其與delattr()函數的功能相同。


      以上講述了Python內置函數delattr()的使用方法以及del操作符的使用。如有問題歡迎留言。

      如需轉載,請注明出處:翔宇亭IT樂園(http://www.dgmtwj.com),并給出本文鏈接地址:

      http://www.dgmtwj.com/article/python/2021/6540.html

      微信搜索“優雅的代碼”關注本站的公眾號,或直接使用微信掃描下面二維碼關注本站公眾號,以獲取最新內容。

      個人成長離不開各位的關注,你的關注就是我繼續前行的動力。

      知識評論評論內容只代表網友觀點,與本站立場無關!

         評論摘要(共 0 條,得分 0 分,平均 0 分) 查看完整評論
      愿您的精彩評論引起共鳴,帶來思考和價值。
      用戶名: 查看更多評論
      分 值:100分 90分 80分 70分 60分 40分 20分
      內 容:
      驗證碼:
      關于本站 | 網站幫助 | 廣告合作 | 網站聲明 | 友情連接 | 網站地圖
      本站部分內容來自互聯網,如有侵權,請來信告之,謝謝!
      Copyright © 2007-2021 biye5u.com. All Rights Reserved.
      japanese日本熟妇photo