import os print( os.path.join ((r`C :Python27Toolspynche`, `ChipViewer.py`) ) # C:Python27ToolspyncheChipViewer.pyВ этом примере мы объединили пути к каталогу и файлу, чтобы получить рабочий путь. Обратите внимание, что метод соединения не указывает конечный результат. Модуль операционной системы в Python предоставляет функции для взаимодействия с операционной системой. Операционная система является частью стандартных служебных модулей Python. Этот модуль предоставляет переносимый способ использования функций, зависящих от ОС. os. Модуль пути — это подмодуль модуля ОС в Python, используемый для общих операций с путями. a> ( () метод в Python интеллектуально объединяет один или несколько компонентов пути. Этот метод объединяет различные компоненты пути с ровно одним разделителем каталогов (`/`), следующим за каждой непустой частью, кроме последней p ат компонент. Если последний компонент объединяемого пути пуст, в конце вставляется разделитель каталогов (`/`). Если компонент пути представляет собой абсолютный путь, все предыдущие объединенные компоненты удаляются, и соединение продолжается с компонента абсолютного пути.
Синтаксис: os.path.join ((path, *paths) Параметр: path: Объект, подобный пути, представляющий путь к файловой системе. *path: Объект, подобный пути, представляющий путь к файловой системе. Он представляет компоненты пути, которые необходимо объединить. Объект, подобный пути, представляет собой либо строку, либо байтовый объект, представляющий путь. Примечание: специальный синтаксис *args (здесь *paths) в определениях функций в python используется для передачи переменного количества аргументов в функцию.Тип возвращаемого значения: этот метод возвращает строку, которая представляет объединенные компоненты пути.
Код: использование метода os.path.join (() для соединения различных компонентов пути
# Программа Python для объяснения os.path.join (() метод # импорт модуля os import os # Path path = "/home" # Объединение различных компонентов пути print( os.path.join ((path, "User/Desktop", "file.txt")) # Path path = "User/Documents" # Присоединяйтесь к различным компонентам пути print( os.path.join ((path, "/home", " file.txt")) # В приведенном выше примере `/home` # представляет собой абсолютный путь, # поэтому все предыдущие компоненты, т.е. User/Documents #, отбрасываются, а соединение продолжается # с компонента абсолютного пути, т.е. /home. # Path path = "/User" # Объединение различных компонентов пути print( os.path.join ( (path, "Downloads", "file.txt", "/home")) # В приведенном выше примере `/User` и `/home` # оба представляют собой абсолютный путь # но `/home` является последним значением # поэтому все предыдущие компоненты до `/home` # будут отброшены, а присоединение # продолжится с `/home` # Path path = "/home" # Соединение различных компонентов пути print( os.path.join ((path, "User/Public/", "Documents", "")) # В приведенном выше примере # последний компонент пути пусто # поэтому разделитель каталогов (`/`) # будет помещен в конец # вместе с конкатенированным значением
Вывод:
/home/User/Desktop/file.txt /home/file.txt /home /home/User/Public/Documents/
Объединение компонентов пути
В предыдущем примере я намеренно использовал косую черту «/» для разделения компонентов пути. в принципе нормально, но не ре похвалил. Если вы хотите, чтобы ваше приложение было кроссплатформенным, этот вариант не подходит. Например, некоторые старые версии Windows распознают в качестве разделителя только косую черту «». Но не волнуйтесь, Python прекрасно решает эту проблему благодаря os.path.join ( ( ) Перепишем пример из предыдущего абзаца, используя эту функцию:os.path.exists ( os .path.join ( (`sample_data`, `README.md`))
Архивная версия
os.path.join (()
в Python os.path.join ( ()
объединяет один или несколько компонентов пути. Этот метод объединяет различные компоненты пути ровно с одним разделителем каталогов (' / ') после каждой непустой части, кроме последнего компонента пути. пути для присоединения пуст, то в конце ставится разделитель каталогов (' / ').
Если компонент пути представляет абсолютный путь, тогда все ранее подключенные компоненты отбрасываются, и соединение продолжается с компонентом абсолютного пути.
Синтаксис: os.path.join ( (путь, * пути)
< em>Параметр:
путь : похожий на путь объект, представляющий путь к файловой системе.
* путь : путь -подобный объект, представляющий путь к файловой системе. Он представляет соединяемые компоненты пути.
Объект, подобный пути, представляет собой строку или байтовый объект, представляющий путь.Примечание. Специальный синтаксис * args (здесь * пути) в определениях функций в python используется для передачи переменного количества аргументов в функцию.
Тип возвращаемого значения: Этот метод возвращает строку, которая представляет объединенные компоненты пути.
Код: использование os.path .join ( () метод для объединения различных компонентов пути
# Программа Python для объяснения метода os.path.join ( ()
# импорт модуля ОС
import
os
# Путь
путь
=
"/ home"
# Присоединяйтесь к различным компоненты пути
print
( os.path.join ( (path,
"User/Desktop"
,
"file.txt"
))
# Путь
путь
=
"Пользователь/Документы"
# Соединить различные компоненты пути
print
( os.path.join ( (path,
"/ home"
,
" file.txt "
))
# В приведенном выше примере ' / домой '
# представляет собой абсолютный путь
# так что все предыдущие компоненты, т.е. пользователь/документы
< br> # отброшено и вложение продолжается
# из компонента абсолютного пути, т.е. /home.
# Путь
путь
=
"/ User"
# Соедините различные компоненты пути
print
( os.path.join ( (путь,
"Загрузки"
,
"file.txt"
,
"/ home"
))
# In приведенный выше пример ' / User ' и ' / home '
# оба представляют абсолютный путь
< br> # но ' / home ' - последнее значение
# поэтому все предыдущие c противники перед ' / домой '
# будет удалено и объединено
# продолжить с ' / домой '
# Путь
путь
=
"/ home"
# Соединить различные компоненты пути
print
(os.path. join (path,
"User/Public/"
,
"Documents"
, ""))
# В приведенном выше примере последний
# компонент пути пуст
# поэтому разделитель каталогов (' / ')
# будет помещен в конец
# вместе с комбинированным значением
Вывод:
/home/User/Desktop/file.txt /home/file.txt / home / home / User / Public / Documents /