Python的class中的参数的用法问题
高洛峰
高洛峰 2017-04-17 14:49:54
[Python讨论组]

在 codecademy 学习 Python 时遇到的问题,创建了两个类EmployeeCEO

class Employee(object):
    def __init__(self, name):
        self.name = name
    def greet(self, other):
        print "Hello, %s" % other.name

class CEO(Employee):
    def greet(self, other):
        print "Get back to work, %s!" % other.name

ceo = CEO("Emily")
emp = Employee("Steve")
emp.greet(ceo)  # Hello, Emily
ceo.greet(emp)  # Get back to work, Steve!

这里为什么会有other.name这种用法,是什么意思?

self.name = name理解为当前对象的成员变量name赋值为name,是不是说self就是实例,name就是它的一个属性?

那么other.name是什么意思呢?

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

全部回复(2)
怪我咯

啊? 很简单啊。1.就是other这个参数里面有个name属性(成员变量)。 2.self指向类实例化的对象自己。

天蓬老师

other是一个实例对象参数,这个实例对象有name这个属性,如果你传入的对象不是CEO或者Employee的实例的话,那么会报出异常AttributeError。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号