Python论坛  - 讨论区

标题:[python-chinese] 刚学习python在网上看到段代码,不明白什么意思!!

2007年09月03日 星期一 14:02

韩志刚 hanzg在known.cn
星期一 九月 3 14:02:23 HKT 2007

def greet(someone, anotherone):
   print someone, 'say hello to', anotherone


class Person(object):
   def __init__(self, name):
     self.name=name
   def __str__(self):
     return self.name

p1 = Person('test1')

p2 = Person('test2')

greet(p1, p2)
test1 say hello to test2

Person.greet = greet #ÕâÓÐЩ¿´²»¶®ÁË,ÄÇλ¸ø½âÊÍÏÂ

p1.greet(p2)
test1 say hello to test2
-------------- 下一部分 --------------
Ò»¸öHTML¸½¼þ±»ÒƳý...
URL: http://python.cn/pipermail/python-chinese/attachments/20070903/101fa782/attachment.htm 

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2007年09月03日 星期一 14:07

Jiahua Huang jhuangjiahua在gmail.com
星期一 九月 3 14:07:12 HKT 2007

重新定义对象里的方法

这里或说给 Person 加一个 greet 方法

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2007年09月03日 星期一 14:09

黄毅 yi.codeplayer在gmail.com
星期一 九月 3 14:09:55 HKT 2007

貌似是我在 chinaunix 上发的?
Person.greet = greet 就是给 Person 加个方法了,名字叫 "greet" ,值就是 greet 这个函数对象了。
然后通过 p1 调用时( p1.greet ),会把 p1 当做第一个参数传过去,也就等价于 greet(p1, p2) 了。


On 9/3/07, 韩志刚 <hanzg at known.cn> wrote:
>
> def greet(someone, anotherone):
>    print someone, 'say hello to', anotherone
>
>
> class Person(object):
>    def __init__(self, name):
>      self.name=name
>    def __str__(self):
>      return self.name
>
> p1 = Person('test1')
>
> p2 = Person('test2')
>
> greet(p1, p2)
> test1 say hello to test2
>
> Person.greet = greet #这有些看不懂了,那位给解释下
>
> p1.greet(p2)
> test1 say hello to test2
>
> _______________________________________________
> python-chinese
> Post: send python-chinese at lists.python.cn
> Subscribe: send subscribe to python-chinese-request at lists.python.cn
> Unsubscribe: send unsubscribe to  python-chinese-request at lists.python.cn
> Detail Info: http://python.cn/mailman/listinfo/python-chinese
>



-- 
http://codeplayer.blogspot.com/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://python.cn/pipermail/python-chinese/attachments/20070903/f4736205/attachment.html 

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2007年09月03日 星期一 14:23

韩志刚 hanzg在known.cn
星期一 九月 3 14:23:42 HKT 2007

¶àл,¶þλ»ÆÐÖ!

ÔÚ07-9-3£¬º«Ö¾¸Õ <hanzg在known.cn> дµÀ£º
>
> def greet(someone, anotherone):
>    print someone, 'say hello to', anotherone
>
>
> class Person(object):
>    def __init__(self, name):
>      self.name=name
>    def __str__(self):
>      return self.name
>
> p1 = Person('test1')
>
> p2 = Person('test2')
>
> greet(p1, p2)
> test1 say hello to test2
>
> Person.greet = greet #ÕâÓÐЩ¿´²»¶®ÁË,ÄÇλ¸ø½âÊÍÏÂ
>
> p1.greet(p2)
> test1 say hello to test2
>
-------------- 下一部分 --------------
Ò»¸öHTML¸½¼þ±»ÒƳý...
URL: http://python.cn/pipermail/python-chinese/attachments/20070903/72469cc8/attachment-0001.html 

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

如下红色区域有误,请重新填写。

    你的回复:

    请 登录 后回复。还没有在Zeuux哲思注册吗?现在 注册 !

    Zeuux © 2025

    京ICP备05028076号