0

免责声明:明智的语义确实表明 LHS 的行为取决于 RHS 词位是可笑的。但我还是很好奇。

嗨,大家好,

一个简单的问题,但有人可能比我的 hack 回答得更好。我目前正在搞乱元类等,并为某些事情制定出舒适的语法。

给定 Pythonwith ... as ...:语句,我可以在上下文管理器中访问右侧给出的名称吗as

with foo('fido') as Dog:
    ...

foo.__enter__()找出lexeme where Dogis?

超级奖励积分:保持与实现无关,也支持 Python 3.x。

4

1 回答 1

1

不,就像(说)Dog = foo('fido')没有“严肃”的方式foo可以知道它的结果即将被绑定到Dog调用者中。(通过“严肃”,我不包括在堆栈中翻找调用字节码并反汇编它,&c - 基本上是你知道如果你知道你的代码将由井维护你永远不会做的事情- 肌肉发达的维护者,知道你住在哪里;-)。

于 2010-08-17T15:04:36.143 回答