首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在Python3中进行名称绑定?

如何在Python3中进行名称绑定?
EN

Stack Overflow用户
提问于 2015-10-13 13:04:44
回答 1查看 37关注 0票数 2

我有一个像self.table[25].hello[23]这样的长表达式。我想设置self.table[25].hello[23] = Foo(),但我不想键入self.table[25].hello[23]。我想做一些类似的事情:

代码语言:javascript
运行
复制
temp = self.table[25].hello[23]
temp = Foo()

显然,这在Python中不起作用,因为它现在只使temp指向Foo()。有什么方法可以在Python中实现更强的名称绑定吗?

EN

回答 1

Stack Overflow用户

发布于 2015-10-13 13:44:52

不,不是真的。

未经测试:

代码语言:javascript
运行
复制
class itemsetter:
  def __init__(self, obj, el):
    self.obj = obj
    self.el = el

  def __call__(self, val):
    self.obj[self.el] = val

setindex = itemsetter(self.table[25].hello, 23)
setindex(Foo())
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33094519

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档