美文网首页
05_对象属性的增删改查

05_对象属性的增删改查

作者: 阅心_5cc2 | 来源:发表于2018-07-31 19:02 被阅读0次
class Dog:
    """狗类"""
    def __init__(self,age = 0,color='yellow'):
        self.age = age
        self.color = color
if __name__ == '__main__':
    dog1 = Dog(age=3,color='white')
    # 1,查(获取对象属性)
    """方法1:对象.属性(---如果属性不存在,会报错)
        方法2:对象.__getattribut__(属性名)和getattr(对象,属性名,默认值) 
    """
    print(dog1.age,dog1.color)

    print(dog1.__getattribute__('age'))
    # 如果设置了default的值,那么当属性不存在的时候不会报错,并且返回默认值
    print(getattr(dog1,'age','没有这个属性'))
# 2.改(修改属性的值)
"""方法1:对象.属性
   方法2:对象.__setattr__(属性名,新值)和setattr(对象,)

"""
dog1.age = 4
print(dog1.age)

dog1.__setattr__('color','black')
print(dog1.color)

setattr(dog1,'color','blue')
print(dog1.color)
# 3.增加(增加对象属性)
""" 对象.x属性 = 值(属性不存在)
    注意:属性是添加给对象的,而不是类 
"""
dog1.name = '大黄'
print(dog1.name)

dog1.__setattr__('type','哈士奇')
print(dog1.type)

setattr(dog1,'sex','公')
print(dog1.sex)

    # 4.删除(删除对象属性)
    """ 
    方法1:del 对象.属性
    方法2:
    注意:所删对象的属性必须存在,删除属性也是删除某个对象的属性
    不会影响这个类的其他对象 
    """
    # del dog1.age
    # print(dog1.age)

    # dog1.__delattr__('age')
    # print(dog1.age)

    # delattr(dog1,'color')
    # print(dog1.color)

以上代码运行结果如下:

3 white
3
3
4
black
blue
大黄
哈士奇
公

练习:声明一个学生类,拥有属性:姓名,性别,年龄。方法:学习
1,声明学生类的对象,声明的时候就给姓名,性别和年龄赋值
2,通过三种方式分别获取姓名,性别和年龄,并且打印
3,给学生对象添加一个属性,电话
4,修改学生的年龄
5.删除学生的性别

# 声明类
class Student:
    def __init__(self,name = '',age = 0,sex = ''):
        self.name = name
        self.sex = sex
        self.age = age

    def study(self):
        print('%s学习'%self.name)
# 声明对象
stu1 = Student('小明',30,'男')
print(stu1.name)
print(stu1.__getattribute__('age'))
print(getattr(stu1,'sex'))

stu1.tel ='10086'

stu1.age = 20

del stu1.sex
stu1.study()

以上代码运行结果如下:

小明
30
男
小明学习

相关文章

  • 对象属性的增删改查

    python中对象的属性支持增删改查 属性的增删改查 1.查(获取对象属性) 对象.属性 - 获取指定对象指定属...

  • 05_对象属性的增删改查

    以上代码运行结果如下: 练习:声明一个学生类,拥有属性:姓名,性别,年龄。方法:学习1,声明学生类的对象,声明的时...

  • JS补充15

    对象 属性的增,删,改,查 增:对象.属性=“方法”; 删:delete.对象.原有属性; 查...

  • Python面向对象编程

    类相关知识 对象相关知识 类属性增删改查 实例属性增删改查 对象与实例属性 静态属性 类方法 静态方法 组合 继承...

  • JavaScript防篡改对象

    preventExtensions:不能增,能删改seal:不能增删,能改freeze:不能增删改 对象属性增删改...

  • python-16-面向对象基础2

    一、属性的增删改查 1.查(获取对象属性的值)方法1:对象.属性 --> 获取指定属性值,属性不存在会报错 方...

  • 对象

    属性的增删改查 对象里面的删除属性再次访问没有的属性的话是undefined,别的地方会报错 对象的创建方法 1....

  • Mybatis的映射文件

    一、增删改查 BookMapper接口 BookMapper.xml映射文件 二、获取自增主键的值 添加两个属性:...

  • [JavaScript基础] 对象 包装类

    对象 属性的增、删、改、查 对象的创建方法 plainObject 对象字面量 / 对象直接量 构造函数1). ...

  • javascript 对象的封装(二)---对象属性的操作

    对象的增、删、改、查 1、增: 所谓增添一个对象的属性,就是直接对该属性进行赋值操作即可,这就相当于为该对象添加了...

网友评论

      本文标题:05_对象属性的增删改查

      本文链接:https://www.haomeiwen.com/subject/ehzhvftx.html