2

私は Python (Python 3.2 を使用) を学んでおり、いくつかのマニュアルに従っています。1 つには、現在のディレクトリを、作成してそこに配置するように求められた特定のファイルを含むディレクトリに変更するように求められました。次のエラーが発生しました。

>>> import os
>>> os.getcwd()
'C:\\Users\\the mine comp'
>>> os.chdir("../Desktop")
Traceback (most recent call last):
  File "<pyshell#24>", line 1, in <module>
    os.chdir("../Desktop")
WindowsError: [Error 2] The system cannot find the file specified: '../Desktop'

私はこれらを試しました:

os.chdir("/Desktop")
os.chdir("\Desktop")
os.chdir(r"/Desktop")
os.chdir(r"\Desktop")
os.chdir("../Desktop")
os.chdir("..\Desktop")
os.chdir(r"../Desktop")
os.chdir(r"..\Desktop")

ここで質問する前に見つけた唯一の関連情報は、Windows パス変数に生の文字列を使用し (悲しいことに、これはすべて Vista ネットブックで発生しています)、パス名をnormpath(path)で正規化することでした。上記のように前者を試しましたが (正しく使用していますか?)、後者の使用方法や、それが私の問題に適用できるかどうかを完全には理解していません。

私が遭遇した唯一の他のビットは、文字列でバックスラッシュを使用してエスケープ文字を呼び出している可能性があることですが、生の文字列構文はその問題を処理する必要がありましたよね? また、取得しようとしているディレクトリは次のとおりです。

 C:\users\the mine comp\Desktop

助言がありますか?

4

1 に答える 1

1

/またはフォームは、絶対パス\に変更するためのものです。成功するには、最初から最後までのパス全体を知る必要があります。

..フォームは、ディレクトリを変更するためのものです。上向きまたは「横向き」に移動する場合にのみ必要です。

ただ試してみてくださいos.chdir("Desktop")。既にC:\users\the mine comp\ディレクトリにいるので、上に移動したり、絶対的な場所に移動したりする必要はありません。(ディレクトリ内のファイルを開きたい場合は、ファイルに名前を付けるだけです。サブディレクトリについても同じです。)

于 2012-03-21T01:32:28.927 に答える