Python面向对象之类和对象属性的增删改查操作示例

本文实例讲述了Python面向对象之类和对象属性的增删改查操作。分享给大家供大家参考,具体如下:

一、类属性的操作

# -*- coding:utf-8 -*-
#! python2
class Chinese:
  country = 'China'
  def __init__(self,name):
    self.name = name
  def play_ball(self,ball):
    print('%s play %s' %(self.name,ball))
#查看属性
print(Chinese.country)
#修改属性
Chinese.country = 'Japan'
print(Chinese.country)
p1 = Chinese('alex')
print(p1.__dict__)
print(p1.country)
#增加属性
Chinese.dang = '鸟哥教程(niaoge.com)'
print(Chinese.dang)
print(p1.dang)
#删除属性
del Chinese.dang
del Chinese.country
print(Chinese.__dict__)

运行结果:

China
Japan
{'name': 'alex'}
Japan
鸟哥教程(niaoge.com)
鸟哥教程(niaoge.com)
{'__module__': '__main__', 'play_ball': <function play_ball at 0x01AAB7B0>, '__doc__': None, '__init__': <function __init__ at 0x01AAB830>}

二、对象属性的操作

# -*- coding:utf-8 -*-
#! python2
class Chinese:
  country = 'China'
  def __init__(self,name):
    self.name = name
  def play_ball(self,ball):
    print('%s play %s' %(self.name,ball))
def test():
    print("对象方法的属性")
p1 = Chinese('alex')
print(p1.__dict__)
#查看属性
print(p1.name)
print(p1.play_ball)
#增加属性
p1.age = 18
print(p1.__dict__)
print(p1.age)
p1.test = test   #将外界的方法作为函数属性加入类中
print(p1.__dict__)
p1.test()
#修改属性
p1.age = 19
print(p1.__dict__)
print(p1.age)
#删除属性
del p1.age
print(p1.__dict__)

运行结果:

{'name': 'alex'}
alex
<bound method Chinese.play_ball of <__main__.Chinese instance at 0x01AE9DA0>>
{'age': 18, 'name': 'alex'}
18
{'test': <function test at 0x01AEB7F0>, 'age': 18, 'name': 'alex'}
对象方法的属性
{'test': <function test at 0x01AEB7F0>, 'age': 19, 'name': 'alex'}
19
{'test': <function test at 0x01AEB7F0>, 'name': 'alex'}

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python面向对象程序设计入门与进阶教程》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python编码操作技巧总结》及《Python入门与进阶经典教程》

希望本文所述对大家Python程序设计有所帮助。

声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#niaoge.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。