Рубрики
Без рубрики

Как проверить файл или каталог в Python

Если это не имеет значения, это файл или каталог, который вы можете использовать OS.Path.exists (): # check_exists.py Imp … Теги с Python, основы.

Если это не имеет значения, это файл или каталог, который вы можете использовать OS.Path.exists () :

# check_exists.py
import os

file = "/home/user/tmp/file"
dir = "/home/user/tmp/dir"

if __name__ == "__main__":
    print("File exists: ", os.path.exists(file))
    print("Dir exists: ", os.path.exists(dir))

Примечание :

Я использую Если __name__ Обозначение. Если вы хотите увидеть больше Информация об этом посмотрите эту статью: Что делать, если имя __name__ делают в Python

Когда вы запускаете файл, вы увидите, как приведен ниже:

$ python check_exists.py

File exists: True
Dir exists: True

Вы можете быть немного запутанным, поскольку в Unix, подобных системам – MacOS и Linux, файлы сценариев не должны нуждаться в расширении файлов, такие как file.sh. или file.py Отказ Все, что вам нужно, это Shebang#! . Например, это содержание /home/user/tmp/file :

# /home/user/tmp/file
#!/bin/bash

# make a tmp/ dir at $HOME if not exists with verbose input
mkdir -pv ~/tmp

Примечание :

Использование ~/ Псевдоним нравится ~/tmp/dir не работает. Вы должны дать абсолют путь или расширить псевдоним: OS.Path.expanduser (‘~/tmp/file’)

Файл

Если вы хотите проверить файл, и получил Тип файла :

# check_file_exists.py
import os

file = "/home/user/tmp/file"

if __name__ == "__main__":
    print("File exists AND a file: ", os.path.isfile(file))

Каталог

Вы можете проверить каталог с OS.Path.isdir Функция:

# check_dir_exists.py
import os

dir = "/home/user/tmp/dir"

if __name__ == "__main__":
    print("Dir exists AND a directory: ", os.path.isdir(dir))

Бонус: создать Если не существует

Также, если вы хотите создать один, если это не существует:

# check_exists_or_create.py
import os

file = "/home/user/tmp/file"
dir = "/home/user/tmp/dir"

if __name__ == "__main__":
    # create dir if not exists
    if not os.path.isdir(dir):
        os.mkdir(dir)

    # create file if not exists
    if not os.path.isfile(file):
        open(file, 'w').close()

    # alternative to create file if not exists
    from pathlib import Path
    Path(file).touch()

Все сделано!

Оригинал: “https://dev.to/serhatteker/how-to-check-a-file-or-directory-exists-in-python-1o5f”