これらの関数とデータ要素は、現在のプロセスおよびユーザに対する情報 提供および操作のための機能を提供しています。
environ['HOME']
は( いくつかのプラットフォーム上での) あなたの
ホームディレクトリへのパスです。これは C の getenv("HOME")
と
等価です。
このマップ型の内容は、os モジュールの最初の import の時点、
通常は Python の起動時に site.py が処理される中で取り込まれます。
それ以後に変更された環境変数は os.environ
を直接変更しない限り
反映されません。
プラットフォーム上で putenv() がサポートされている場合、この マップ型オブジェクトは環境変数に対するクエリと同様に変更するために使うこ ともできます。putenv() はマップ型オブジェクトが修正される時に、 自動的に呼ばれることになります。
注意:
putenv() を直接呼び出してもos.environ
の
内容は変わらないので、os.environ
を直接変更する方がベターです。
注意:
FreeBSD と Mac OS X を含むいつくかのプラットフォームでは、
environ
の値を変更するとメモリリークの原因になる場合があります。
システムの putenv() に関するドキュメントを参照してください。
putenv() が提供されていない場合、このマッピングオブジェクト に変更を加えたコピーを適切なプロセス生成機能に渡して、子プロセスが修正された環境変数 を利用するようにできます。
プラットフォームが unsetenv() 関数をサポートしているならば、
このマッピングからアイテムを取り除いて環境変数を取り消すことができます。
unsetenv() は os.environ
からアイテムが取り除かれた時に
自動的に呼ばれます。
path) |
) |
) |
) |
) |
) |
) |
) |
pwd.getpwuid(os.getuid())[0]
を使うほうが便利です。
利用できる環境: Unix。
) |
) |
) |
) |
varname[, value]) |
None
です。
利用できる環境: Unix互換環境、Windows。
varname, value) |
注意:
FreeBSD と Mac OS X を含むいつくかのプラットフォームでは、
environ
の値を変更するとメモリリークの原因になる場合があります。
システムの putenv に関するドキュメントを参照してください。
putenv() がサポートされている場合、 os.environ
の要素に対する代入を行うと自動的に putenv() を呼び出します;
しかし、putenv() の呼び出しは os.environ
を更新しない
ので、実際には os.environ
の要素に代入する方が望ましい操作です。
egid) |
euid) |
gid) |
groups) |
) |
pid, pgrp) |
ruid, euid) |
rgid, egid) |
pid) |
) |
uid) |
code) |
mask) |
) |
(sysname, nodename, release, version,
machine)
が入っています。
システムによっては、ノード名を 8 文字、または先頭の要素だけに
切り詰めます; ホスト名を取得する方法としては、
socket.gethostname()
を使う方がよいでしょう、あるいは
socket.gethostbyaddr(socket.gethostname())
でもかまいません。
利用できる環境: Unix互換環境
varname) |
unsetenv() がサポートされている時には os.environ
のアイテムの
削除が対応する unsetenv() の呼び出しに自動的に翻訳されます。しかし、
unsetenv() の呼び出しは os.environ
を更新しませんので、
むしろ os.environ
のアイテムを削除する方が好ましい方法です。
ご意見やご指摘をお寄せになりたい方は、 このドキュメントについて... をご覧ください。