Python 2.7 проверить, есть ли файл с определенным именем файла - PullRequest
0 голосов
/ 30 мая 2018

Я хочу проверить, есть ли в папке файл, имя которого содержит определенную строку, например:

папка:

- hi.txt

- bye.txt

- bedanagain.txt

- dan1.txt

- dan2.txt

- grey.txt

вернуть true, если в папке есть файл с именем «dan».

Плюс, если возможно, мне нужно использовать самый известный импорт (клиент нервничает по поводу использованиянеизвестные пакеты с открытым исходным кодом) и наименьшее количество импортов.

Я пытался использовать os.path.exists, но обнаружил, что он работает только при наличии полного имени файла и не может найтиимя файла, содержащее некоторую строку.

Я пытался:

import os
print os.path.exists('./dan') // false
print os.path.exists('./dan*') // false
print os.path.exists('./*dan') // false

Вот почему это не дубликат - я проверил упомянутый канал, он имеет дело с "если файл существует"а не "если файл с какой-либо строкой в ​​его имени существует"

Спасибо!

Ответы [ 3 ]

0 голосов
/ 30 мая 2018

Вы можете использовать os.listdir("dir path"), чтобы получить все файлы в каталоге в списке и проверить имя файла в этом списке:

import os
def check_file():
    x = os.listdir("path to dir")
    for i in x:
        if ["hi","bye","bedanagain","dan1","dan2","gray"] in i:
            return True
0 голосов
/ 30 мая 2018

Вы можете использовать модуль OS.

Пример:

import os
for file in os.listdir(Path):
    if "dan" in file:
        print(file)
0 голосов
/ 30 мая 2018

Если вы используете Mac, попробуйте взглянуть на модуль 'os' (он должен быть встроен в ваш компьютер), который вы можете импортировать с помощью:

import os

Вы можете запускать команды оболочки изнутриPython, используя

os.system("your command")

Например,

os.system("echo "This is terminal"")

Я уверен, что есть команда терминала, которая позволит вам проверять папки на наличие определенных файлов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...