Путь к файлу: различия между версиями

Материал из Информатика и Техники
 
Строка 5: Строка 5:
src = open( path_to_file, 'rt', encoding='utf-8' )
src = open( path_to_file, 'rt', encoding='utf-8' )
</syntaxhighlight>
</syntaxhighlight>
Нужный путь к файлу задан параметром <code>path_to_file</code>. (Как правило, удобнее на передавать его прямо в функцию, а записывать в отдельную переменную.)
Обратите внимание, что путь к файлу задан в виду обычной текстовой строки. Так как символ обратного слеша <code>\</code> в языке Python является служебным символом, а в данном случае мы имеем в виду символ-разделитель в пути к файлу, то он нам нужен не в качестве служебного символа, а как символ собственной персоной. Поэтому с текстовой строке мы должны по общим правилам всякий раз повторять его дважды. Таким образом, в данном случае речь идет о пути <code>C:\Data\test\myfile.txt</code>.
Хотя такая запись пути к файлу и является правильной и совершенно допустимой, она по некоторым причинам не очень удобна. Во-первых, путь к файлу по-разному записывается на разных операционных системах. Например, в системе Linux аналогичный путь будет записан как <code>/Data/test/myfile.txt</code>. Во-вторых, иногда нам недостаточно просто записать  путь к файлу -- может потребоваться, скажем «создать файл с именем <code>otherfile.txt</code> в той же папке, что и файл <code>path_to_file</code>».
По этой причине в языке Python предусмотрены специальные средства для работы с путями к файлам.
=== Новый способ ===
=== Старый способ ===


[[Category:Заготовка страницы]]
[[Category:Заготовка страницы]]

Текущая версия на 19:24, 16 февраля 2022

При открытии файла мы в числе прочих параметров должны указать, какой файл открываем:

path_to_file = 'C:\\Data\\test\\myfile.txt'
src = open( path_to_file, 'rt', encoding='utf-8' )

Нужный путь к файлу задан параметром path_to_file. (Как правило, удобнее на передавать его прямо в функцию, а записывать в отдельную переменную.)

Обратите внимание, что путь к файлу задан в виду обычной текстовой строки. Так как символ обратного слеша \ в языке Python является служебным символом, а в данном случае мы имеем в виду символ-разделитель в пути к файлу, то он нам нужен не в качестве служебного символа, а как символ собственной персоной. Поэтому с текстовой строке мы должны по общим правилам всякий раз повторять его дважды. Таким образом, в данном случае речь идет о пути C:\Data\test\myfile.txt.

Хотя такая запись пути к файлу и является правильной и совершенно допустимой, она по некоторым причинам не очень удобна. Во-первых, путь к файлу по-разному записывается на разных операционных системах. Например, в системе Linux аналогичный путь будет записан как /Data/test/myfile.txt. Во-вторых, иногда нам недостаточно просто записать путь к файлу -- может потребоваться, скажем «создать файл с именем otherfile.txt в той же папке, что и файл path_to_file».

По этой причине в языке Python предусмотрены специальные средства для работы с путями к файлам.

Новый способ

Старый способ