поэтому я пишу общее приложение для резервного копирования с модулем os
и pickle
, и я пробовал приведенный ниже код, чтобы увидеть, является ли что-то файлом или каталогом (на основе ввода строки, а не его физического содержимого).
import os, re
def test(path):
prog = re.compile("^[-\w,\s]+.[A-Za-z]{3}$")
result = prog.match(path)
if os.path.isfile(path) or result:
print "is file"
elif os.path.isdir(path):
print "is directory"
else: print "I dont know"
Проблемы
test("C:/treeOfFunFiles/")
is directory
test("/beach.jpg")
I dont know
test("beach.jpg")
I dont know
test("/directory/")
I dont know
Желаемый результат
test("C:/treeOfFunFiles/")
is directory
test("/beach.jpg")
is file
test("beach.jpg")
is file
test("/directory/")
is directory
Ресурсы
- Имя тестового файла с регулярным выражением
- библиотека Python RE
- Проверка типов файлов с помощью регулярного выражения
какое регулярное выражение я должен использовать, чтобы определить разницу между тем, что может быть file
, и тем, что может быть directory
? или есть другой способ сделать это?
os.path
. См. это решение - person David   schedule 17.10.2012/beach.jpg
? - person Joel Cornett   schedule 17.10.2012