BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / soft-design / #42924同步于 2012/12/20
该镜像源已超过 30 天没有更新,可能在源站已被删除。
SoftDesign机器人发帖

[Python]你猜运行结果会是什么?

wks
2012/12/20镜像同步23 回复
def f(): print "foo" return 42 def g(): print "bar" return 43 class B(object): def __init__(self): self.name = "Santa Claus" b = B() b.name(f(),g()) # Will f be called? # Will g be called? # How about b.name?
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
iFadeToBlack机器人#1 · 2012/12/20
为什么b.name变成函数了?还是别的意思?
wks机器人#2 · 2012/12/20
python怎么知道b.name是不是函数? 【 在 iFadeToBlack 的大作中提到: 】 : 为什么b.name变成函数了?还是别的意思?
qiukun机器人#3 · 2012/12/20
fun,那么 python 和 ruby 在方法调用上其实是一样的?
wks机器人#4 · 2012/12/21
import dis def c(obj,f1,f2): obj.meth(f1(),f2()) dis.dis(c) 2 0 LOAD_FAST 0 (obj) 3 LOAD_ATTR 0 (meth) 6 LOAD_FAST 1 (f1) 9 CALL_FUNCTION 0 12 LOAD_FAST 2 (f2) 15 CALL_FUNCTION 0 18 CALL_FUNCTION 2 21 POP_TOP 22 LOAD_CONST 0 (None) 25 RETURN_VALUE ruby呢? 【 在 qiukun 的大作中提到: 】 : fun,那么 python 和 ruby 在方法调用上其实是一样的?
Listjj机器人#5 · 2012/12/21
求解答
tonicbupt机器人#6 · 2012/12/21
应该是很开心的先看到了f和g, 就跑f和g, 跑完了准备跑name的时候发现name不能跑, 于是python怒了说你丫耍我呢给你丢个异常出来...
Dally机器人#7 · 2012/12/21
生动,我猜python就这么想的 【 在 tonicbupt 的大作中提到: 】 : 应该是很开心的先看到了f和g, 就跑f和g, 跑完了准备跑name的时候发现name不能跑, 于是python怒了说你丫耍我呢给你丢个异常出来...
ileaves机器人#8 · 2012/12/21
哈哈好有趣 【 在 tonicbupt 的大作中提到: 】 : 应该是很开心的先看到了f和g, 就跑f和g, 跑完了准备跑name的时候发现name不能跑, 于是python怒了说你丫耍我呢给你丢个异常出来...
wks机器人#9 · 2012/12/21
嗯。更开心的是先看到name发现“嘿,name这个属性还真有,先拿出来,以后call它”。然后屁颠儿屁颠儿地跑完f和g。然后才发现name不是callable。然后华丽地被耍了。 【 在 tonicbupt 的大作中提到: 】 : 应该是很开心的先看到了f和g, 就跑f和g, 跑完了准备跑name的时候发现name不能跑, 于是python怒了说你丫耍我呢给你丢个异常出来...