15 полезных методов из модуля Python OS
Когда мы работаем с Python, иногда нам необходимо использовать функции операционной системы компьютера. Модуль «os» в Python помогает нам в этом. Он позволяет нам делать такие вещи, как определение текущего каталога, составление списка файлов и папок, создание или удаление папок и многое другое.
В этой статье мы рассмотрим некоторые полезные функции модуля «os», которые могут быть полезны для ваших проектов.
Модуль ОС на Python
Прежде чем перейти к наиболее часто используемым методам, нам сначала нужно понять, что такое модуль ОС. Модуль ОС в Python помогает вам работать с операционной системой вашего компьютера. Он позволяет вам выполнять такие действия, как доступ к файлам и папкам, управление процессами и выполнение команд.
Вы можете использовать его для получения информации о каталогах, создания или удаления папок и выполнения других системных задач. По сути, это упрощает обработку системных задач в ваших программах Python.
15 часто используемых методов модуля ОС
Теперь, когда мы знаем о модуле ОС, давайте посмотрим, какие методы он может предложить и для чего они используются.
1. os.getcwd()
Этот метод возвращает текущий рабочий каталог в виде строки. Рабочий каталог — это каталог, из которого в данный момент запускается ваш скрипт Python.
Пример:
import os
current_dir = os.getcwd()
print("Current directory is:", current_dir)
Вывод:
2. os.chdir(path)
Этот метод изменяет текущий рабочий каталог на указанный путь.
Пример:
import os
os.chdir('C:\\Users\\HP\\Desktop\\codeforgeek(python)\\Intro Streamline')
print(f"Current working directory changed to: {os.getcwd()}")
Вывод:
3. os.listdir(path)
Этот метод возвращает список, содержащий имена записей в каталоге, указанном в пути. Если путь не указан, по умолчанию используется текущий каталог.
import os
files_in_current_dir = os.listdir()
print("Files in current directory:", files_in_current_dir)
Вывод:
4. os.mkdir(path)
Этот метод помогает нам создать каталог с именем path.
Пример:
import os
path = 'C:\\Users\\HP\\Desktop\\codeforgeek(python)\\Os module\\New directory'
os.mkdir(path)
print(f"Directory '{os.path.basename(path)}' created at: {os.path.abspath(path)}")
Вывод:
5. os.path.splitext(path)
Этот метод разбивает заданный путь на его базовое имя файла и расширение файла, возвращая кортеж с двумя элементами.
Пример:
import os
path = 'C:\\Users\\HP\\Desktop\\codeforgeek(python)\\Os module\\chdir.py'
root, ext = os.path.splitext(path)
print("Root:", root)
print("Extension:", ext)
Вывод:
6. os.rmdir(path)
Этот метод удаляет путь к каталогу. Однако он может удалять только пустые каталоги. Если каталог path
содержит какие-либо файлы или другие каталоги, os.rmdir()
выдаст ошибку.
Пример:
import os
path = 'C:\\Users\\HP\\Desktop\\codeforgeek(python)\\Os module\\New directory'
os.rmdir(path)
print(f"Directory '{os.path.basename(path)}' deleted at: {os.path.abspath(path)}")
Вывод:
7. os.path.getsize(path)
Этот метод возвращает размер файла, указанного путем, в байтах.
Пример:
import os
size = os.path.getsize('C:/Users/HP/Desktop/codeforgeek(python)/Os module/chdir.py')
print("size of the file in bytes is :", size)
Вывод:
8. os.path.exists(path)
Этот метод проверяет, существует ли файл или каталог по указанному пути. Если он существует, он возвращает True
, в противном случае возвращает False
.
Пример:
import os
exists = os.path.exists('C:\\Users\\HP\\Desktop\\codeforgeek(python)\\Os module\\mkdir.py')
print("Exists:", exists)
Вывод:
9. os.path.isfile(path)
Этот метод возвращает True
, если path
является существующим обычным файлом.
Пример:
import os
is_file = os.path.isfile('C:\\Users\\HP\\Desktop\\codeforgeek(python)\\Os module\\mkdir.py')
print("Is file:", is_file)
Вывод:
10. os.path.isdir(path)
Этот метод проверяет, соответствует ли указанный путь (path
) каталогу. Возвращает значение True
, если это каталог, в противном случае значение False
.
Пример 1:
import os
is_dir = os.path.isdir('C:\\Users\\HP\\Desktop\\codeforgeek(python)\\Streamlit')
print("Is directory:", is_dir)
Вывод:
Пример 2:
import os
is_dir = os.path.isdir('C:\\Users\\HP\\Desktop\\codeforgeek(python)\\Os module')
print("Is directory:", is_dir)
Вывод:
11. os.path.join(path1, path2, …)
Этот метод объединяет несколько путей в один. Пути объединяются с помощью соответствующего разделителя для операционной системы, например
для Windows
<strong>\</strong>
и Unix-like systems
<strong>/</strong>
Пример:
import os
path = os.path.join('C:\\Users\\HP\\Desktop\\codeforgeek(python)', 'Os module', 'mkdir.py')
print("Joined path:", path)
Вывод:
12. os.path.abspath(path)
Этот метод возвращает абсолютную версию пути. Абсолютный путь указывает полное местоположение файла или каталога в корневом каталоге файловой системы.
Пример:
import os
absolute_path = os.path.abspath('chdir.py')
print("Absolute path:", absolute_path)
Вывод:
13. os.path.basename(path)
Этот метод возвращает базовое имя файла или каталога, указанного в пути, удаляя все ведущие компоненты каталога.
Пример:
import os
filename = os.path.basename(' C:\\Users\\HP\\Desktop\\codeforgeek(python)\\Os module\\chdir.py')
print("Filename is :", filename)
Вывод:
14. os.path.dirname(path)
Этот метод возвращает компонент каталога по заданному пути (path
), исключая последний элемент.
Пример:
import os
directory = os.path.dirname('C:\\Users\\HP\\Desktop\\codeforgeek(python)\\Os module\\chdir.py')
print("Directory is :", directory)
Вывод:
15. os.path.split(path)
Этот метод отделяет путь к каталогу и имя файла от заданного пути, возвращая их в виде двух строк в кортеже.
Пример:
import os
head, tail = os.path.split(' C:/Users/HP/Desktop/codeforgeek(python)/Os module/chdir.py')
print("Head of the path is :", head)
print("Tail of the path is :", tail)
Вывод:
Краткое содержание
И вот мы подошли к концу этой статьи. Надеюсь, теперь у вас есть четкое представление о модуле os в Python. Это облегчает нам работу с путями и каталогами, помогая нам легко добавлять, удалять, проверять, разделять и выполнять множество подобных операций с каталогами. Теперь, когда вы знаете 15 наиболее часто используемых методов ОС в Python, вы сможете легко использовать их в будущем.