「ほぼ常に安全」が正しいです。あなたが関心を持っているすべてのプラットフォームはおそらく今日問題なく動作し、私は彼らがすぐに規約を変更するとは思わない.
ただし、Python は非常に移植性が高く、通常のプラットフォームよりもはるかに多くのプラットフォームで実行できます。モジュールの理由はos
、プラットフォームが異なる要件を持っていることをスムーズにするのに役立つことです。
os
関数を使用しない正当な理由はありますか?
os.pardir
は自己文書化".."
ですが、そうではありません.os.pardirはgrepしやすいかもしれません
これは、Macがまだすべての点で異なっていたときのpython 1.6のドキュメントです。
使用しているシステムに応じて、Mac、DOS、NT、または Posix 用の OS ルーチン。
これは以下をエクスポートします: - posix、nt、dos、os2、mac、または ce からのすべての関数 (unlink、stat など) - os.path はモジュール posixpath、ntpath、macpath、または dospath のいずれかです - os.name は ' posix'、'nt'、'dos'、'os2'、'mac'、または 'ce' - os.curdir は現在のディレクトリを表す文字列です ('.' または ':') - os.pardir は文字列です親ディレクトリを表す ('..' または '::') - os.sep は (または最も一般的な) パス名区切り記号 ('/' または ':' または '\') です - os.altsep は代替パス名ですセパレーター (なしまたは '/') - os.pathsep は $PATH などで使用されるコンポーネント セパレーターです - os.linesep はテキスト ファイルの行セパレーターです (' ' または ' ' または ' ') - os.defpath はデフォルトの検索です実行可能ファイルのパス
「os」をインポートして使用するプログラムは、異なるプラットフォーム間で移植できる可能性が高くなります。もちろん、すべてのプラットフォームで定義されている関数のみを使用し (unlink や opendir など)、パス名の操作はすべて os.path に任せる必要があります (split や join など)。