Python,With ... as ... AST /符号访问
问题描述:
声明:明智的语义确实规定,根据RHS的词位,LHS的行为是不同的。但我很奇怪。Python,With ... as ... AST /符号访问
嗨,大家好,
简单的问题,而是一个可以Somone的能够回答比我更好的破解。我目前正在弄乱元类等,并为一些事情制定出舒适的语法。
鉴于Python的with ... as ...:
声明,我可以在上下文管理器访问的域名(或多个)上的as
右侧给出什么:
with foo('fido') as Dog:
...
能foo.__enter__()
找出词位,其中Dog
是什么?
超级奖金信用:保持它的实现不可知,也支持Python 3.x。
答
不,就像在Dog = foo('fido')
中说的那样,foo
可以知道其结果在调用者中将被绑定到名称Dog
的“严重”方式。 (通过“严重”,我不在堆栈中查找调用字节码并将其拆分,& c - 基本上,如果您知道代码将由肌肉发达的维护者,他知道你住在哪里;-)。
+1确实。感谢您的回复。我知道明智的代码也不应该考虑到词法;) – 2010-08-17 15:11:17