Какова временная сложность в Python os.path.exists()?

У меня есть тонна папок, вложенных друг в друга.
Какова временная сложность в Python os.path.exists()?
Изменится ли он при использовании с другой ОС?

2 ответа

Решение

Учитывая, что вы спрашиваете ОС, существует ли один файл, ему не нужно выполнять какую-либо алгоритмическую логику или идти по вашему пути... Я не понимаю, как это может быть что-то еще, кроме O(1).

os.path.exists просто выполняет системный вызов и возвращает True, если путь указывает на существующий файл или каталог.
Питон, кажется, перформанс lstat() системный вызов по заданному пути.

Если операция состоит только в поиске в хеш-таблице, тогда стоимость O(1), но это может зависеть от операционной системы и от того, как она реализована внутри.

Другие вопросы по тегам