このシナリオを想像してみてください。
ZopeにZPTがあり、金属ブロックにグローバル変数を定義しています。
この変数は、次のような式から値を取得します
global myVar id | nothing;
global anotherVar 1;
どこでまたはまたはなどnothing
に置き換えることができます。python:0
python:False
None
今、別のブロックに、私は次のようなことをすることを想像してください
global myVar2 myVar | anotherVar | nothing;
nothing
上で指定したすべてのものはどこにありますか。
id
ここで、それが値を持たず、そのようmyVar
に取られたと仮定しますnothing
(または他の可能な値。まったく違いはありません)。
私が期待したmyVar2
のは、値があるanotherVar
ので、の値を取るanotherVar
ということでした。myVar2
しかし、驚いたことに、これは真実ではなく、myVar
価値があったことに気づきました。つまりnothing
。
何が起こっているのかを理解していれば、この種のステートメントはその変数の存在のみを制御し、その値は制御しないと思います。
明らかに、私はその種のステートメントをpythonicな方法で作成でき、もちろん、それは「うまく」機能します(つまり、私が期待したとおり)
。