#!/usr/bin/python
#-*- coding:utf-8 -*-
'''
Created on 2016年6月24日
@author: Administrator
'''
'''
Python面向对象编程
http://www.runoob.com/python/python-object.html
'''
class Employee:
empCount = 0
def __init__(self, name, salary):
self.name = name
self.salary = salary
Employee.empCount +=1
def displayCount(self):
print "Total Employee %d" % Employee.empCount
def displayEmployee(self):
print "Name:", self.name, ", Salary:", self.salary
class Point:
def __init__(self, x =0 ,y = 0):
self.x = x
self.y = y
def __del__(self):
class_name = self.__class__.__name__
print class_name, "销毁"
class Parent: #定义父类
parentAttr = 100
def __init__(self):
print "调用父类构造函数"
def parentMethod(self):
print "调用父类方法"
def setAttr(self,attr):
Parent.parentAttr = attr
def getAttr(self):
print "父类属性:", Parent.parentAttr
class Child(Parent): #定义子类
parentAttr = 200
def __init__(self):
print "调用子类构造方法"
def childMethod(self):
print "调用子类方法"
#方法重写
def getAttr(self):
print "子类属性:", Child.parentAttr
#访问对象
def accessObject():
emp1 = Employee("Zara", 2000)
emp2 = Employee("Manni", 5000)
print Employee.empCount
emp1.displayEmployee()
emp1.age = 7
print emp1.age
emp1.age = 9
print emp1.age
del emp1.age
emp2.displayEmployee()
#访问对象的属性
print getattr(emp1, 'name') #没有则抛出异常
#检查是否存在一个属性
print hasattr(emp1, 'name') #没有则返回False ,有则返回True
#设置属性
setattr(emp1, 'name', 'zhangsan')
emp1.displayEmployee()
#删除属性
emp2.age = 9
delattr(emp2, 'age') #如果删除一个不存在的属性,则抛出异常
#类的属性和方法
#类的私有属性:__private_attrs, 两个下划线开头,声明该属性为私有
#类的方法
#类的私有方法: __private_method , 两个下划线开头,声明为该方法为私有方法
class JustCounter:
__secretCount = 0 #私有变量
publicCount = 0 #公开变量
def count(self):
self.__secretCount += 1
self.publicCount += 1
print self.__secretCount
#Python内置属性
def printInnerAttribute():
#__dict__:类的属性
print "Employee.__dict__:", Employee.__dict__
#__doc__:类的文档字符串
print "Employy.__doc__:", Employee.__doc__
#__name__:类名
print "Employee.__doc__:", Employee.__name__
#__module__:类定义所在的模块
print "Employee.__module__", Employee.__module__
#__bases__:类的所有父类构成元素
print "Employee.__bases__:", Employee.__bases__
#Python对象销毁
def destoryObject():
pt1 = Point()
pt2 = pt1
pt3 = pt1
print id(pt1), id(pt2), id(pt3) #打印对象的ID
#40895560 40895560 40895560
del pt1
del pt2
del pt3
#类的继承
def extendObject():
c = Child()
c.childMethod()
c.parentMethod()
c.setAttr(200)
c.getAttr()
#判断一个类是否是另一个类的子类或者子孙类
print issubclass(Child, Parent)
#判断一个对象是否是一个类或者子类的实力
print isinstance(c, Child)
#私有变量 和 私有方法
def privateMethod():
counter = JustCounter()
counter.count()
counter.count()
print counter.publicCount
#print counter.__secretCount 不能通过实例来访问私有变量
#可以通过 对象._类名__私有属性 的方式来访问私有属性
print counter._JustCounter__secretCount
if __name__ == '__main__':
#访问对象
#accessObject()
#访问内部属性
#printInnerAttribute()
#销毁对象
#destoryObject()
#类的继承
#extendObject()
#私有变量和私有方法
privateMethod()
-------2016-06-25 0:20
@modaokeng.yongtaixincun.baiyunqu.guangzhoushi.guangdongsheng
分享到:
相关推荐
Python 是一种高级、解释型、交互式和面向对象的脚本语言。它的设计哲学强调代码的可读性和简洁的语法(尤其是使用空格缩进划分代码块,而非使用花括号或关键字)。Python 提供了动态类型系统,支持多种编程范式,...
面向对象编程是Python的一大特色,书中对此进行了深入讨论。讲解了类的定义、对象的创建与销毁,继承、多态等面向对象概念,以及装饰器、上下文管理器等高级特性。此外,还涉及了Python中的内置类型如set的实现原理...
python程序设计-第一章-基础知识.pptx" python程序设计-第二章-判断语句与循环语句 python程序设计-第三章-字符串、列表、元组与字典.pptx" ...python程序设计-第八章-面向对象-高级 python程序设计-Pycharm使用技巧
4. **面向对象编程**:Python是面向对象的语言,文档会解释类、对象、继承、多态等概念,并给出实际示例。 5. **模块和包**:Python的模块化设计使得代码组织有序,包的使用则可以更好地管理和重用代码。文档将指导...
1. **Python开发语言**: Python是一种高级编程语言,以其简洁明了的语法和强大的功能而受到全球开发者喜爱。Python适用于各种应用领域,包括Web开发、数据分析、机器学习、网络编程等。在本教程中,学习者将从基础...
4. **面向对象编程**:Python是一门面向对象的语言,理解类和对象的概念、继承、封装和多态是进阶的关键。此外,还会学习如何设计和实现模块化的代码。 5. **文件操作**:学习读写文件、处理异常、文件遍历等,这...
Python是一种高级编程语言,由Guido van Rossum在1989年圣诞节期间开始编写。其第一个编译器兼解释器在1991年2月诞生,使用C语言实现,并支持调用C语言的库函数。Python 1.0于1994年1月正式发布,而Python 2.0在2000...
Python是一种高级编程语言,以其易读性、简洁的语法和丰富的库生态系统而闻名。3.6.7版包含了自3.6系列以来的所有更新和改进,包括性能优化、新特性和错误修复。文档中的主要知识点包括: 1. **基础语法**:涵盖了...
《Python 3面向对象编程》通过Python 的数据结构、语法、设计模式,从简单到复杂,从初级到高级,一步步通过例子来展示了Python 中面向对象的概念和原则。, 《Python 3面向对象编程》不是Python 的入门书籍,适合...
Python,作为一款高级编程语言,以其简洁明了的语法、丰富的库支持以及强大的社区生态,深受程序员们的喜爱。Python 3.7.3是Python 3.x系列的一个稳定版本,包含了众多新特性与优化。本手册详细介绍了这一版本的各个...
Python是一种广泛使用的高级编程语言,以其易读性、简洁的语法和强大的功能而闻名。Python 3.6.4是Python 3.x系列的一个稳定版本,特别为AMD64(也称为x86-64)架构设计,适用于64位操作系统。这个“python-3.6.4-...
Python是一种高级编程语言,它的语法清晰,注重可读性,非常适合初学者。Python-for-Kids的源代码中,会涵盖变量、数据类型(如整型、浮点型、字符串)、控制结构(如if-else语句、for循环、while循环)以及函数的...
Python3级至5级,逐步引入面向对象编程概念,包括类与对象、继承、多态等核心概念。此外,还会涉及异常处理、文件和目录操作、模块化编程等进阶主题。这一阶段的目标是培养学生的代码组织能力和问题解决能力。 ...
2. **面向对象编程**:详细介绍Python中的类、对象、继承等面向对象编程思想。 3. **高级特性**:如装饰器、上下文管理器、迭代器、生成器等。 4. **网络编程与Web开发**:涵盖网络协议、HTTP请求、Web框架等内容。 ...
同时,文档会涵盖类与对象,这是Python面向对象编程的核心,包括类的定义、对象的创建、继承、封装和多态等概念。 文档还详细阐述了Python的函数式编程特性,如高阶函数、map、filter和reduce等,以及lambda表达式...
Python是一种广泛使用的高级编程语言,以其易读性、简洁的语法和强大的功能而备受青睐。本教程涵盖了Python的基础知识、高级特性以及面向对象编程的概念,旨在帮助初学者快速上手并深入理解Python编程。 首先,...
Python是一种广泛使用的高级编程语言,以其易读性、简洁的语法和强大的功能而闻名。Python 3.7.7是该语言的一个稳定版本,提供了许多改进和新特性。本资源"python-3.7.7-docs-pdf-a4.zip"包含了一份详尽的Python ...
Python是一种高级编程语言,以其简洁、清晰的语法著称,被广泛应用于各种领域,包括科学计算、数据分析、Web开发等。在化工应用数学中,Python也被用作工具,帮助处理和分析复杂的数学问题。Python的流行在TIOBE编程...