« 日記 |Main| 日記 »

« Just Another Python Hacker, その2 | Python | Subversionへの新規importをちょっと楽にするスクリプト »

グローバルよりも広いもの

Pythonにはグローバル名前空間よりも広い範囲からアクセスできる名前空間があります。それはビルトイン名前空間です。openやintなどの基本的なビルトイン関数へのアクセスを提供するための名前空間ですが、ユーザーが自由に追加することができます。

__builtin__.__dict__['name'] = obj

Cでは以下のようになります。

PyDict_SetItemString(PyEval_getBuiltins(), "name", obj);

と、ここまでが先日久しぶりにPythonが組み込まれたVC++のプログラムをいじって修正したところなのですが、今この記事を書くためにAPIリファレンスを調べてみたところPyEval_getBuiltinsが載っていません…。あれれ?

トラックバック(Trackback)

Trackback URL: http://www.nishiohirokazu.org/mt/mt-tb.cgi/226

ご意見・ご感想をお送りください(フィードバック)

(フィードバックはメールで送信され、基本的に表示されませんが、内容によっては公開させていただくこともございます。ご了承ください。Your comment doesn't appear the page immediately. If the comment has value to other people, it will be put on the page or subsequent entries. Thank you.)

上の情報は、いずれも未記入でかまいません。 All of above questions are optional.