问一个python的问题嘛

2012-09-03 22:34:53 +08:00
 Rabbit52
我有一个对象 a 它有一个属性 b 值为 c

那么我 a.b 这样就能得到 c

现在我有个变量 d = 'b'

我怎么才能通过变量 d 拿到对象 a 中的 b 的值

举个例子,如果在 php 中能这样 $a->$d
2898 次点击
所在节点    Python
5 条回复
raptium
2012-09-03 22:39:27 +08:00
a.__dict__[d]
a.__getattr__(d)
或者 a.__getattribute__(d) 也許更好
yuelang85
2012-09-03 22:43:19 +08:00
getattr(a, d)
Rabbit52
2012-09-03 22:57:32 +08:00
@raptium
@yuelang85
谢谢你们! ok了!
013231
2012-09-03 23:08:59 +08:00
你也可以實現類的__getitem__, __setitem__方法, 然後就可以像Javascript那樣用'[]'運算符訪問屬性了.
Rabbit52
2012-09-03 23:17:28 +08:00
@013231 嗯,这个比较高端

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/46828

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX