收藏官网首页
查看: 11706|回复: 0

Python 面向对象(3)

17

主题

57

帖子

426

积分

版主

Rank: 7Rank: 7Rank: 7

积分
426
跳转到指定楼层
楼主
发表于 2015-12-11 11:04:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
教您5分钟接入机智云,实现傻瓜式开发
本帖最后由 ShanYe 于 2015-12-11 11:58 编辑

创建实例对象
要创建一个类的实例,你可以使用类的名称,并通过__init__方法接受参数。
"创建 Employee 类的第一个对象"
emp1
= Employee("Zara", 2000)
"创建 Employee 类的第二个对象"
emp2 = Employee("Manni", 5000)
访问属性
您可以使用点(.)来访问对象的属性。使用如下类的名称访问类变量:

  1. emp1.displayEmployee()
  2. emp2.displayEmployee()
  3. print "Total Employee %d" % Employee.empCount
复制代码

完整实例:

  1. #!/usr/bin/python
  2. # -*- coding: UTF-8 -*-

  3. class Employee:
  4.    '所有员工的基类'
  5.    empCount = 0

  6.    def __init__(self, name, salary):
  7.       self.name = name
  8.       self.salary = salary
  9.       Employee.empCount += 1
  10.    
  11.    def displayCount(self):
  12.      print "Total Employee %d" % Employee.empCount

  13.    def displayEmployee(self):
  14.       print "Name : ", self.name,  ", Salary: ", self.salary

  15. "创建 Employee 类的第一个对象"
  16. emp1 = Employee("Zara", 2000)
  17. "创建 Employee 类的第二个对象"
  18. emp2 = Employee("Manni", 5000)
  19. emp1.displayEmployee()
  20. emp2.displayEmployee()
  21. print "Total Employee %d" % Employee.empCount
复制代码
执行以上代码输出结果如下:
  1. Name :  Zara ,Salary:  2000
  2. Name :  Manni ,Salary:  5000
  3. Total Employee 2
复制代码
你可以添加,删除,修改类的属性,如下所示:
  1. emp1.age = 7  # 添加一个 'age' 属性
  2. emp1.age = 8  # 修改 'age' 属性
  3. del emp1.age  # 删除 'age' 属性
复制代码
你也可以使用以下函数的方式来访问属性:
getattr(obj, name[, default]) : 访问对象的属性。
hasattr(obj,name) : 检查是否存在一个属性。
setattr(obj,name,value) : 设置一个属性。如果属性不存在,会创建一个新属性。
delattr(obj, name) : 删除属性。
  1. hasattr(emp1, 'age')    # 如果存在 'age' 属性返回 True。
  2. getattr(emp1, 'age')    # 返回 'age' 属性的值
  3. setattr(emp1, 'age', 8) # 添加属性 'age' 值为 8
  4. delattr(empl, 'age')    # 删除属性 'age'
复制代码


您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

加入Q群 返回顶部

版权与免责声明 © 2006-2024 Gizwits IoT Technology Co., Ltd. ( 粤ICP备11090211号 )

快速回复 返回顶部 返回列表