首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【Python 第48课】 面向对象(2)

【Python 第48课】 面向对象(2)

作者头像
Crossin先生
发布2018-04-16 14:06:39
5480
发布2018-04-16 14:06:39
举报

昨天介绍了面向对象的概念,今天我们来创建一个类。

class MyClass:

pass

mc = MyClass()

print mc

关键字class加上类名用来创建一个类。之后缩进的代码块是这个类的内部。在这里,我们用pass语句,表示一个空的代码块。

类名加圆括号()的形式可以创建一个类的实例,也就是被称作对象的东西。我们把这个对象赋值给变量mc。于是,mc现在就是一个MyClass类的对象。

看一下输出结果:

<__main__.MyClass instance at 0x7fd1c8d01200>

这个意思就是说,mc是__main__模块中MyClass来的一个实例(instance),后面的一串十六进制的数字是这个对象的内存地址。

我们给这个类加上一些域:

class MyClass:

name = 'Sam'

def sayHi(self):

print 'Hello %s' % self.name

mc = MyClass()

print mc.name

mc.name = 'Lily'

mc.sayHi()

我们给MyClass类增加了一个类变量name,并把它的值设为'Sam'。然后又增加了一个类方法sayHi。

调用类变量的方法是“对象.变量名”。你可以得到它的值,也可以改变它的值。

注意到,类方法和我们之前定义的函数区别在于,第一个参数必须为self。而在调用类方法的时候,通过“对象.方法名()”格式进行调用,而不需要额外提供self这个参数的值。self在类方法中的值,就是你调用的这个对象本身。

输出结果:

Sam

Hello Lily

之后,在你需要用到MyClass这种类型对象的地方,就可以创建并使用它。

面向零基础初学者的编程课

每天5分钟,轻松学编程

回复『 p 』查看课程目录

回复『 t 』查看习题列表

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2013-08-08,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Crossin的编程教室 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档