29

os.path.curdir戻り値 '。' これは完全に真実であり、完全に価値がありません。それから何か有用なものを得るには、それをラップする必要がありますos.path.abspath(os.path.curdir)

os.pathモ​​ジュールに役に立たない変数を含めるのはなぜですか?os.path.curdirをos.path.abspathを実行する関数にしてみませんか?

存在する歴史的な理由はありos.path.curdirますか?

たぶん役に立たないのは少し厳しいですが、これを説明するのはあまり役に立たないようです。 ここに画像の説明を入力してください

4

3 に答える 3

49

のように定数os.path.sepです。

POSIX および Windows 以外のプラットフォームでは、「現在のディレクトリ」を示すために別の値を使用できます。@たとえば、Risc OS では、古い Macintosh OS では:.

この値は、プラットフォームにとらわれないように、標準ライブラリ全体で使用されます。

os.getcwd()代わりに使用してください。とにかく、os.path.abspath()その機能を内部で使用して、現在の作業ディレクトリに変換します。os.path.curdirの POSIX 実装は次のabspath()とおりです。

def abspath(path):
    """Return an absolute path."""
    if not isabs(path):
        if isinstance(path, _unicode):
            cwd = os.getcwdu()
        else:
            cwd = os.getcwd()
        path = join(cwd, path)
    return normpath(path)
于 2013-01-24T22:38:10.087 に答える
9

の値os.path.curdir"."、Linux、Windows、および OS X 上にあります。ただし、":"古い Mac OS 9 システム上にはあります。Python は長い間存在しており、これはかつて重要でした。

于 2013-01-24T22:40:41.850 に答える
8

これは、プラットフォームに依存する一定の値です。ドキュメントから(読む価値があります):

オペレーティング システムが現在のディレクトリを参照するために使用する定数文字列。これは'.'Windows および POSIX 用です。からも入手できますos.path

os.getcwd()代わりに使用することを検討してください。

于 2013-01-24T22:39:33.100 に答える