Примери са модулом темпфиле
Почећемо са једноставним примерима са Питхоном темпфиле модул овде.
Креирање привремених датотека
Прво што је потребно за спремање привремених података су датотеке у којима можемо да их похранимо. То се може учинити помоћу ТемпорариФиле () функцију. Највећа предност ове функције је када се датотека креира помоћу ове функције, а везе до ове датотеке се не успостављају у системском систему датотека, тако да другим процесима није могуће приступити тим датотекама.
Погледајмо једноставан програм који користи ТемпорариФиле () функција:
импорт осимпорт темпфиле
# Коришћење ПИД-а у називу датотеке за бољу идентификацију
филе = '/ тмп / линукхинт_% с.ткт '% ос.гетпид ()
# Пружање режима датотеке
темп_филе = отвори (датотека, 'в + б')
покушати:
принт ('привремена датотека: 0'.формат (темп_филе))
принт ('темп_филе.име: 0 '.формат (темп_филе.име))
коначно:
темп_филе.Близу()
# Ми сами бришемо привремену датотеку
ос.уклони (датотека)
принт ('Привремени подаци о датотекама:')
темп_филе = темпфиле.ТемпорариФиле ()
покушати:
принт ('привремена датотека: 0'.формат (темп_филе))
принт ('темп_филе.име: 0 '.формат (темп_филе.име))
коначно:
# Чисти датотеку када се позове цлосе
темп_филе.Близу()
Ево шта добијамо овом командом:
Креирање привремене датотеке
Ова датотека се брише чим се Близу() функција се позива на темпфиле референца.
Читање из привремене датотеке
Чак је и читање из привремене датотеке лако и може се обавити једним позивом методе у истом модулу. Предност ове функције је у томе помаже нам да избегнемо сложене ИО операције укључени ако треба да радимо ове операције ручно. Ево програма који приказује ову функцију на делу:
импорт осимпорт темпфиле
темпФиле = темпфиле.ТемпорариФиле ()
покушати:
принт ('Записивање података у темпФиле:')
темпФиле.врите (б'Ани дата цан го хере.')
темпФиле.тражити (0)
принт ('Читање обрасца података темпФиле: \ н \ т 0'.формат (темпФиле.читати()))
коначно:
темпФиле.Близу()
Погледајмо излаз за ову наредбу:
Питхон чита из привремене датотеке
Сав текст у привременим датотекама враћен је једним позивом методе.
Писање обичног текста у привремену датотеку
У нашим горе наведеним програмима сви подаци записани у датотеке нису били у облику једноставног формата обичног текста. Ако то желимо учинити за једноставне текстуалне операције, можемо само изменити режим датотеке када отворимо привремену датотеку за измене:
импорт темпфилефилеМоде = 'в + т'
са темпфиле.Привремена датотека (мод = филеМоде) као датотека:
датотека.линије за писање (['Линук \ н', 'Убунту \ н'])
датотека.тражити (0)
за ставку у датотеци:
испис (ставка.рстрип ())
Ево шта добијамо овом командом:
Писање обичног текста у датотеку
Креирање именованих привремених датотека
Датотеке које треба обухватити више процеса морају бити именоване тако да их процес не брише када је завршен. Ево како можемо створити привремену именовану датотеку:
импорт осимпорт темпфиле
темпФиле = темпфиле.НамедТемпорариФиле ()
покушати:
принт ('темпФиле: 0'.формат (темпФиле))
принт ('темп.темпФиле: 0 '.формат (темпФиле.име))
коначно:
# Брисање датотеке такође
темпФиле.Близу()
принт ('Да ли постоји? : 0 '.формат (ос.пут.постоји (темпФиле.име)))
Погледајмо излаз за ову наредбу:
Именована темпфиле
Ако датотеку не избришемо, можемо да проверимо да ли постоји у другом програму и употребимо је ако постоји на наведеном месту.
Навођење назива датотеке Суфикс и префикс
Да бисмо лако идентификовали датотеке које припадају нашим властитим процесима у систему датотека, можемо применити Суфикс и Префикс и на име датотеке:
импорт темпфилетемпФиле = темпфиле.НамедТемпорариФиле (суфикс = '_ убунту',
префик = 'линукхинт_',
дир = '/ тмп',)
покушати:
принт ('темпФиле:', темпФиле)
принт ('темпФиле.наме: ', темпФиле.име)
коначно:
темпФиле.Близу()
Ево шта добијамо овом командом:
Примена префикса и суфикса на име датотеке
Обезбедили смо три параметра за методу која делује као суфикс и префикс за име датотеке која ће бити локација коју смо навели.
Закључак
У овој лекцији смо погледали како можемо да користимо Питхон темпфиле модул за управљање привременим датотекама у нашем коду. Прочитајте више постова заснованих на Питхону овде.