6.1 os -- 雑多なオペレーティングシステムインタフェース

このモジュールでは、オペレーティングシステム依存の機能を利用する方法 として、posixnt といったオペレーティング システム依存の組み込みモジュールを import するよりも可搬性の高い 手段を提供しています。

このモジュールは、macposix のような、 オペレーティングシステム依存の組み込みモジュールから関数やデータを 検索して、見つかったものを取り出し (export) ます。Python における 組み込みのオペレーティングシステム依存モジュールは、同じ機能を 利用することができる限り、同じインタフェースを使います; たとえば、 os.stat(path)path についての stat 情報を (たまたま POSIX インタフェースに起源する) 同じ書式で返します。

特定のオペレーティングシステム固有の拡張も os を介して 利用することができますが、これらの利用はもちろん、可搬性を脅かします!

最初の os の import 以後、os を介した関数の 利用は、オペレーティングシステム依存組み込みモジュールにおける関数の 直接利用に比べてパフォーマンス上のペナルティは 全くありません。 従って、osを利用しない理由は 存在しません !

os モジュールには多くの関数とデータ値が入っています。 以下の項目と、その後に続くサブセクションは os モジュールから 直接利用できます。

exception error
関数がシステム関連のエラー(引数の型違いや他のありがちなエラーではない) を返した場合この例外が発生します。これは OSError とし て知られる組み込み例外でもあります。付属する値は errno から とった数値のエラーコードと、エラーコードに対応する、C 関数 perror() により出力されるのと同じ文字列からなるペアです。 背後のオペレーティングシステムで定義されているエラーコード名が収め られている errno を参照してください。

例外がクラスの場合、この例外は二つの属性、errnostrerror を持ちます。前者の属性は C の errno 変数 の値、後者は strerror() による対応するエラーメッセージ の値を持ちます。(chdir()unlink() のような) ファイルシステム上のパスを含む例外に対しては、この例外インスタンス は 3 つめの属性、filename を持ち、関数に渡されたファイル名 となります。

name
import されているオペレーティング・システム依存モジュールの名前です。 現在次の名前が登録されています: 'posix', 'nt''dos''mac''os2''ce''java''riscos'

path
posixpathmacpath のように、システムごとに対応 付けられているパス名操作のためのシステム依存の標準モジュールです。 すなわち、正しく import が行われるかぎり、 os.path.split(file)posixpath.split(file) と等価でありながらより汎用性があります。このモジュール自体が import 可能なモジュールでもあるので注意してください。: os.path として直接 import してもかまいません。



ご意見やご指摘をお寄せになりたい方は、 このドキュメントについて... をご覧ください。