Python 地图有链吗?
在Python中,可以使用itertools.chain以惰性方式扩展列表:
L = itertools.chain(L1, L2)
是否有惰性映射“粘合”运算符?即,
M = glue(M1, M2)
其中
M['blah']
返回
M1['blah'] if 'blah' in M1 else M2['blah']
and,M
具有适当的 keys()
和 values()
生成器。
In Python, it's possible to extend a list in a lazy way by using itertools.chain
:
L = itertools.chain(L1, L2)
Is there a lazy map "gluing" operator? I.e.,
M = glue(M1, M2)
where
M['blah']
returns
M1['blah'] if 'blah' in M1 else M2['blah']
and, M
has appropriate generators for keys()
and values()
.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
Python 3.3 添加了 collections.ChainMap 来实现这一点。
Python 3.3 added collections.ChainMap that does exactly that.
构建一个类来表示针对映射列表的惰性求值,并根据您的应用程序定制行为是很简单的。例如:
输出:
It's straightforward to build a class to represent lazy evaluations against a list of maps, and tailor the behavior to your application. For example:
Output: