Python Glossary English

все Python 3устарело в 3.0tempfileфункция

tempfile.mktemp()

временные файлы

Deprecated: возвращает имя несуществующего файла, не создавая его; небезопасна, вместо неё — mkstemp().

Синтаксис

tempfile.mktemp(suffix='', prefix='tmp', dir=None) -> str

Устарела ещё с Python 2.3, но не удалена и предупреждения не выдаёт — поэтому до сих пор встречается в старом коде. Между получением имени и созданием файла другой процесс может успеть создать файл с тем же именем (гонка, уязвимость). Замена — mkstemp() или NamedTemporaryFile(delete=False), которые создают файл сразу.

Примеры

import os, tempfile
name = tempfile.mktemp(suffix='.txt')
print(os.path.exists(name))  # → False — файла нет, только имя

См. также

Открыть в полном глоссарииdocs.python.orgСообщить о неточности