看完天下足球和那该死的什么斯之旅,有种被骗的感觉,节目做的真是越来越步入俗套了,影响了心情,关掉电视开始反省自己。上一周虽然工作和生活日程还算丰富,内心却不免自责,自己的读书进度却是太慢,怎么说咱就要开始上班族2周年的庆祝了,此时却在技术领域上进步缓慢,唯有腰围和酒量大增。。。暂鉴定完毕,开始做笔记。
一、类的方法和对象调用
一般类中方法前初始的变量称为 类的变量,在类的方法中初始的变量为 对象的变量
定义方法时用self变量作为类的默认属性,所有方法的其他变量(对象变量)赋值通过class.self传递为与类联系的链条。用户调用时通过 class.(对象变量的赋值).(方法)<除self默认外的参数>
按照A Byte of Python的例子再写一遍应该可以看懂每行的语句含义:
#!/usr/bin/python
# -*- coding:gb2312 -*- #必须在第一行或者第二行
#Filename:objvar.py
class Person:
'''Represents a person'''
population = 0 #初始化类变量
def __init__(self,name):
'''Initializes the person's data'''
self.name = name #定义__init__方法self.name域
print 'Initializing %s' % self.name
Person.population += 1
def __del__(self): #不需要参数的方法仍要定义 self参数
'''I am dying'''
print '%s says bye' % self.name
Person.population -= 1
if Person.population == 0:
print 'I am the last one'
else:
print 'There are still %d people left.' % Person.population
def sayHi(self):
'''Creating by the person.
Really,that's all it does.'''
print 'Hi,my name is %s' % self.name
def howMany(self):
'''Prints the current population.'''
if Person.population == 1:
print 'I am the only one person here.'
else:
print 'We have %d person here.' % Person.population
songy = Person('SongYang')
songy.sayHi() # Person('SongYang').sayHi() SongYang实例的sayHi方法调用
songy.howMany()
swaroop = Person('Swaroop')
swaroop.sayHi()
swaroop.howMany()
songy.sayHi()
songy.howMany()
从上例也可看出,类的不同实例(对象)之间,都有自己在域上的不用拷贝,他们之间是不相通的。
二、继承
A Byte of Python的例子,重抄了一遍,加了些注释
#!/usr/bin/python
# -*- coding:gb2312 -*-
# Filename: inherit.py
class SchoolMember:
'''Represents any scholl member.'''
def __init__(self,name,age): #定义SchoolMember类的2个参数
self.name = name
self.age = age
print 'Initialized SchoolMember:%s' % self.name
def tell(self):
'''Tell details.'''
print 'Name:"%s",Age:"%s"' % (self.name,self.age), #别小瞧了末尾的这个逗号
class Teacher(SchoolMember):
'''Represents a teacher.'''
def __init__(self,name,age,salary): #Teacher类的3个属性
SchoolMember.__init__(self,name,age) #从SchoolMember继承2个属性,终于知道原来这就是继承:)
self.salary = salary #别忘了定义其他参数
print 'Initialized Teacher:%s' % self.name
def tell(self):
SchoolMember.tell(self)
print 'Salary:"%d"' % self.salary
class Student(SchoolMember):
'''Represents a student.'''
def __init__(self,name,age,marks):
SchoolMember.__init__(self,name,age)
self.marks= marks
print 'Initialized Student:%s' % self.name
def tell(self):
SchoolMember.tell(self)
print 'Marks:"%d"' % self.marks,
t = Teacher('Mr.Swaroop',26,30000) # 类实例的三个属性
s = Student('Song',22,77)
members = [t,s]
for member in members: #喜欢python当然也少不了对for...in的青睐
member.tell()
分享到:
相关推荐
Python实用教程:Python基础,Python高级特性,面向对象编程,多线程,数据库,数据科学,Flask,爬虫开发教程。内部含有学习笔记、MD文档、项目教程、笔记文档 Python实用教程:Python基础,Python高级特性,面向...
下面我们将深入探讨类与对象的概念、面向对象设计到面向对象编程的转变,以及Python中类的属性和方法。 1. 类与对象的本质: - **类**:类是创建对象的蓝图或模板,它定义了一组属性(数据成员)和方法(成员函数...
2. **面向对象编程**:Python是面向对象的语言,因此会涵盖类的定义、对象的创建、继承、封装和多态等概念。 3. **异常处理**:学习如何使用try/except来捕获和处理程序运行时可能出现的错误。 4. **标准库**:...
它是一种解释型的高级编程语言,支持面向对象编程,同时也具备过程化编程的能力,使得开发者在编写代码时具有更高的灵活性。 在【关于Python】部分,我们了解到Python最初是在苹果计算机上实现的,但现在已经可以在...
Python支持多种编程范式,包括面向对象、命令式、函数式和过程式编程。 Python是解释型语言,程序在运行前需要先将源代码编译成字节码,然后由Python虚拟机(PVM)执行这些字节码。此外,Python可以跨平台运行,...
面向对象编程(OOP)在Python中得到了很好的支持。你可以创建类(class)定义对象,使用继承(inheritance)、封装(encapsulation)和多态(polymorphism)原则。Python的内置类如`list`和`dict`都可以被子类化,为...
面向对象编程是Python中一种重要的编程范式,与面向过程编程相比,面向对象编程更加侧重于数据和操作数据的函数的结合,通过封装、继承和多态等特性,提高代码的可重用性和可维护性。 面向过程编程是按照业务逻辑...
Python支持面向对象编程,包括类(class)的定义、对象的创建和方法(函数属于对象)的使用。继承(inheritance)、封装(encapsulation)和多态(polymorphism)是其三大特性。 七、标准库与第三方库 Python的...
1.3章节讨论了Python的主要特点,包括动态类型、解释型、高级数据结构、面向对象编程、可扩展性等。Python支持多种编程范式,使得它在Web开发、科学计算、数据分析、自动化任务等领域都有广泛的应用。 1.4和1.5章节...
Python的面向对象编程是其强大的特性之一,它允许我们通过类和对象来组织代码,模拟现实世界中的概念。本文将深入探讨Python面向对象编程的进阶知识,包括类方法、静态方法、`__new__`和`__init__`方法以及单例模式...
5. **面向对象编程**:Python完全支持面向对象编程,包括类的定义、继承、封装和多态。你可以创建类来表示现实世界中的对象,并通过方法来描述其行为。 6. **异常处理**:Python使用try-except语句处理异常,这使得...
首先,文件标题提到了“Python笔记(三)【函数+bug+面向过程与面向对象】”,这说明本篇笔记重点在于Python函数的使用、程序中bug的调试以及编程范式的比较。 关于Python的函数,它是组织好的,可重复使用的,用来...
6. **面向对象编程**:涵盖类的定义、对象的创建、继承、多态等面向对象的基本概念。 7. **文件操作**:包括打开、关闭文件,读写数据,以及文件对象的各种方法。 8. **标准输入输出**:介绍input()函数的使用和...
4. **面向对象编程**:Python支持面向对象编程(OOP),包括类的定义、对象的创建和继承、封装、多态等概念。理解和运用这些概念可以设计出结构清晰、易于扩展的代码。 5. **异常处理**:Python的异常处理机制使用...
3. **面向对象编程**:Python完全支持面向对象编程,包括类的定义、继承、封装和多态。你可以创建自己的类,定义属性和方法,实现复杂的数据结构和逻辑。 4. **异常处理**:Python使用try-except语句进行异常处理,...
9. **面向对象编程**: Python支持面向对象编程,包括类的定义、对象的创建与使用、继承、封装、多态等概念。 10. **文件操作**: 学习如何读写文件,包括文本文件和二进制文件,以及文件的打开、关闭、追加等模式。 ...
7. **面向对象编程**:Python是完全面向对象的语言,讲解了类的定义、对象的创建、继承、封装和多态等概念。 8. **文件操作**:如何打开、读取、写入和关闭文件,以及更复杂的文件操作如追加、模式切换等。 9. **...
【Python入门自学笔记专辑】——面向对象编程 前言 面相对象是Python的重要特性,继承了C++的类风格,在Python中的一切数据类型都是面向对象的。本章主要介绍Python的面向对象编程。 面向对象: 什么是OOP...