Как указать путь python?
как написать полный адрес к текстовому файлу в windows чтобы он открывался независимо от папки запуска, файл лежит отдельно, в имени каталога есть пробел
Ваш вопрос
как написать полный адрес к текстовому файлу в windows чтобы он открывался независимо от папки запуска, файл лежит отдельно, в имени каталога есть пробел
Для указанного файла используйте абсолютный путь, например Path('C:/data/report.txt'). В Windows прямые слеши в таком пути допустимы, поэтому можно избежать путаницы с обратными слешами и специальными последовательностями в строковых литералах. Импорт выполняется командой from pathlib import Path.
Например, создайте p = Path('C:/My Project/data.txt'), затем откройте его через p.open(encoding='utf-8') в конструкции with. Пробел внутри имени каталога является частью строки и не требует отдельного экранирования в Python. Это отличается от передачи пути как аргумента командной строки, где действуют ещё и правила оболочки.
Обычный путь Path('data.txt') относительный. Он ищется от текущей рабочей папки процесса, которую можно посмотреть через Path.cwd(). Она может быть папкой проекта, папкой терминала или каталогом, выбранным редактором, и не обязана совпадать с местом хранения скрипта.
Если файл всегда расположен рядом со скриптом, базовый каталог можно получить через Path(__file__).resolve().parent, затем присоединить имя оператором /. Но в интерактивном интерпретаторе и некоторых блокнотах переменная __file__ не определена, поэтому там базовую папку выбирают другим способом.
Абсолютный путь решает зависимость от папки запуска, однако делает программу привязанной к конкретному расположению данных. Для переноса на другой компьютер обычно передают путь через аргумент, настройку или диалог выбора. Перед чтением полезно вывести полный ожидаемый путь, а само открытие выполнить с обработкой нужных ошибок. Наличие пути не гарантирует право чтения или сохранность файла между проверкой и открытием.
Path('C:/data/report.txt'). Импортируйте класс через from pathlib import Path.p.open(encoding='utf-8'), указав фактическую кодировку файла. Пробелы внутри строкового значения пути допустимы.Path(__file__).resolve().parent / 'report.txt'. В интерактивной среде __file__ может отсутствовать.Path.cwd(). Именно от неё отсчитываются обычные относительные пути.Абсолютный путь не зависит от папки запуска, но привязан к расположению файла на конкретном компьютере. Не путайте путь к данным с переменной PATH, по которой оболочка ищет исполняемые программы.
Пока нет премиум-вопросов в подборке
Не нашли то, что искали?
Задайте свой вопрос
Лучший ответ
4.20
4.20
Как указать путь python?
Используйте абсолютный путь:
Path('C:/data/report.txt')изpathlib. Прямые слеши работают и в Windows; относительные пути отсчитываются от текущей рабочей папки.