WindowsError: Ошибка 2 Системе не удается найти указанный файл - PullRequest
2 голосов
/ 21 марта 2012

Я изучаю Python (с Python 3.2) и следую нескольким инструкциям. В одном из них меня попросили сменить текущий каталог на тот, который содержит определенный файл, который мне было предложено создать и разместить там. Я столкнулся со следующей ошибкой:

>>> 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 (путь) . Я попробовал первый, как показано выше (я правильно его использую?), И я не до конца понимаю, как использовать последний, или если он даже применим к моей проблеме.

Единственный другой момент, с которым я столкнулся, это то, что я могу вызывать escape-символ, используя обратную косую черту в строках, но необработанный синтаксис строки должен был решить эту проблему, верно? Кроме того, я должен отметить, что каталог, к которому я стремлюсь, это:

 C:\users\the mine comp\Desktop

Есть предложения?

1 Ответ

1 голос
/ 21 марта 2012

Формы / или \ предназначены для перехода на абсолютный путь. Вы должны знать весь путь от начала до конца, чтобы он был успешным.

Формы .. предназначены для изменения каталога . Они нужны только вам, если вы двигаетесь вверх или «вбок».

Попробуйте просто os.chdir("Desktop"). Вы уже находитесь в каталоге C:\users\the mine comp\, поэтому вам не нужно подниматься или перемещаться в абсолютное местоположение. (Учтите, что если вы хотите открыть файл в каталоге, просто назовите файл. То же самое и для подкаталогов.)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...