Примеры с модулем tempfile
Начнем с простых примеров с Python временный файл модуль здесь.
Создание временных файлов
Первое, что нужно для сохранения временных данных, - это файлы, в которых мы можем хранить эти данные. Это можно сделать с помощью Временный файл () функция. Самым большим преимуществом этой функции является то, что когда файл создается с помощью этой функции, в файловой системе системы не создаются ссылки на этот файл, и поэтому другие процессы не могут получить доступ к этим файлам.
Давайте посмотрим на простую программу, которая использует Временный файл () функция:
импорт ОСимпортировать временный файл
# Использование PID в имени файла для лучшей идентификации
файл = '/ tmp / linuxhint_% s.txt '% os.getpid ()
# Обеспечение файлового режима
temp_file = open (файл, 'w + b')
пытаться:
print ('temp_file: 0'.формат (temp_file))
print ('temp_file.имя: 0 '.формат (temp_file.название))
наконец-то:
temp_file.Закрыть()
# Самостоятельное удаление временного файла
Операционные системы.удалить файл)
print ('Метаданные временного файла:')
temp_file = временный файл.Временный файл ()
пытаться:
print ('temp_file: 0'.формат (temp_file))
print ('temp_file.имя: 0 '.формат (temp_file.название))
наконец-то:
# Очищает файл при вызове закрытия
temp_file.Закрыть()
Вот что мы получаем с помощью этой команды:
Создание временного файла
Этот файл удаляется, как только Закрыть() функция вызывается на временный файл Справка.
Чтение из временного файла
Даже чтение из временного файла легко и может быть выполнено за один вызов метода в том же модуле. Преимущество этой функции в том, что это помогает нам избежать сложных операций ввода-вывода задействован, если нам нужно выполнить эти операции вручную. Вот программа, показывающая эту функцию в действии:
импорт ОСимпортировать временный файл
tempFile = временный файл.Временный файл ()
пытаться:
print ('Запись данных в tempFile:')
tempFile.напишите (b'Any data can go here.')
tempFile.искать (0)
print ('Чтение данных из формы tempFile: \ n \ t 0'.формат (tempFile.читать()))
наконец-то:
tempFile.Закрыть()
Посмотрим, что выводит эта команда:
Python читает из временного файла
Весь текст во временных файлах был возвращен одним вызовом метода.
Запись простого текста во временный файл
В наших вышеупомянутых программах все данные, записываемые в файлы, не были в форме простого текстового формата. Если мы хотим сделать это для простых текстовых операций, мы можем просто изменить режим файла, когда мы открываем временный файл для изменений:
импортировать временный файлfileMode = 'ш + т'
с временным файлом.TemporaryFile (mode = fileMode) как файл:
файл.Writelines (['Linux \ n', 'Ubuntu \ n'])
файл.искать (0)
для элемента в файле:
печать (элемент.rstrip ())
Вот что мы получаем с помощью этой команды:
Запись в файл простого текста
Создание именованных временных файлов
Файлы, которые должны быть распределены между несколькими процессами, должны быть названы так, чтобы процесс не удалял их по завершении. Вот как мы можем создать временный именованный файл:
импорт ОСимпортировать временный файл
tempFile = временный файл.NamedTemporaryFile ()
пытаться:
print ('tempFile: 0'.формат (tempFile))
print ('temp.tempFile: 0 '.формат (tempFile.название))
наконец-то:
# Также удаляем файл
tempFile.Закрыть()
print ('Существует? : 0 '.формат (os.дорожка.существует (tempFile.название)))
Посмотрим, что выводит эта команда:
Именованный временный файл
Если мы не удалим файл, мы можем проверить его существование в другой программе и использовать его, если он существует в указанном месте.
Предоставление суффикса и префикса имени файла
Чтобы легко идентифицировать файлы, которые принадлежат нашим собственным процессам в файловой системе, мы также можем применить суффикс и префикс к имени файла:
импортировать временный файлtempFile = временный файл.NamedTemporaryFile (суффикс = '_ ubuntu',
префикс = 'linuxhint_',
dir = '/ tmp',)
пытаться:
print ('tempFile:', tempFile)
print ('tempFile.имя: ', tempFile.название)
наконец-то:
tempFile.Закрыть()
Вот что мы получаем с помощью этой команды:
Применение префикса и суффикса к имени файла
Мы предоставили три параметра методу, который действует как суффикс и префикс для имени файла, которое будет сделано в указанном нами месте.
Заключение
В этом уроке мы рассмотрели, как мы можем использовать модуль Python tempfile для управления временными файлами в нашем коде. Прочтите больше сообщений на основе Python здесь.