Питхон

Користите питхон за зиповање датотеке и директоријума

Користите питхон за зиповање датотеке и директоријума
Стиснута датотека садржи много датотека, директорија и поддиректоријума. Доступне су многе апликације за стварање датотеке компресовања било које велике датотеке или директоријума и преузимање датотека или мапа екстраховањем компримоване датотеке. Када желимо да пребацимо било који велики или директоријум преко Интернета, боље је да компресујемо садржај пре преноса. Ово убрзава задатак. Питхон скрипте можете користити за компримовање и издвајање било које велике датотеке или директорија. зипфиле за извршавање задатка користи се модул питхон. Како можете да користите питхон3 за компресовање било које датотеке или директоријума, приказано је у овом упутству помоћу различитих примера.

Пример-1: Сажимање једне датотеке

Направите нову датотеку под називом 'поштански број1.пи ' и додајте следећи код. зипфиле модул се увози за компресовање датотеке. темп.зип додељује се као зип датотека са режимом писања, а затим оригинално име датотеке, темп.ткт и тип компресије дати су као параметри у методи писања.

импорт зипфиле
зип_филе = зипфиле.ЗипФиле ('темп.зип ',' в ')
зип_филе.врите ('темп.ткт ', цомпресс_типе = зипфиле.ЗИП_ДЕФЛАТЕД)
зип_филе.Близу()

Покрените скрипту

$ питхон3 поштански број1.пи

Величина темп.ткт је 27 бајтова а након компресије величина темп.зип је 2 бајта.

Пример-2: Компримовање одређеног директоријума

Направите нову датотеку под називом 'зипцоде2.пи ' и додајте следећи код. Директоријум може садржати много датотека, директоријума и подмапа. Да бисте прочитали садржај директоријума, ос модул питхон се увози са зипфиле модул за компримовање директоријума. У овом сценарију, мидир директоријум се користи за компресију.

# увезите потребне модуле
 
импорт ос
импорт зипфиле
 
 
# Прогласите функцију за враћање свих стаза датотека одређеног директорија
деф ретриеве_филе_патхс (дирНаме):
 
# променљива путање датотека за подешавање
филеПатхс = []
 
# Прочитајте све директоријуме, поддиректоријуме и листе датотека
за роот, директоријуме, датотеке у ос.хода (дирНаме):
за име датотеке у датотекама:
# Креирајте целу путању датотека помоћу ос модула.
филеПатх = ос.пут.придружи се (роот, име датотеке)
филеПатхс.аппенд (филеПатх)
 
# врати све стазе
врати филеПатхс
 
 
# Прогласите главну функцију
деф маин ():
# Доделите име директоријуму у зип
дир_наме = 'мидир'
 
# Позовите функцију за преузимање свих датотека и фасцикли додељеног директоријума
филеПатхс = ретриеве_филе_патхс (име_дир)
 
# исписује списак свих датотека које се компримовају
принт ('Следећа листа датотека биће компримована:')
за филеНаме у филеПатхс:
принт (филеНаме)
 
# писање датотека у зип датотеку
зип_филе = зипфиле.ЗипФиле (дир_наме + '.зип ',' в ')
са зип_филе:
# писање сваке датотеке једну по једну
за датотеку у филеПатхс:
зип_филе.писање (датотека)
 
принт (име_дир + '.зип датотека је успешно креирана!')
 
# Позовите главну функцију
ако је __наме__ == "__главно__":
главни()

Покрените скрипту

$ питхон3 зипцоде2.пи

Величина мидир је 21 бајта а након компресије величина мидир.зип је 2 бајта.

Пример-3: Сажимање директоријума датог аргументом командне линије

Направите нову датотеку под називом 'зипцоде3.пи ' и додајте следећи код. Да бисте прочитали вредност командне линије, још један питхон модул сис се увози са ос и зипфиле модула.

# увезите потребне модуле
 
импорт ос
импорт сис
импорт зипфиле
 
# Прогласите функцију за враћање свих стаза датотека одређеног директоријума
деф ретриеве_филе_патхс (дирНаме):
 
# променљива путање датотека за подешавање
филеПатхс = []
 
# Прочитајте све директоријуме, поддиректоријуме и листе датотека
за роот, директоријуме, датотеке у ос.хода (дирНаме):
за име датотеке у датотекама:
# Креирајте потпуну датотеку путем ос модула.
филеПатх = ос.пут.придружи се (роот, име датотеке)
филеПатхс.аппенд (филеПатх)
 
# врати све стазе
врати филеПатхс
 
 
# Прогласите главну функцију
деф маин ():
 
# Проверите да ли су дата два аргумента у тренутку покретања скрипте
ако је лен (сис.аргв) != 2:
принт ("Унели сте име директоријума у ​​зип")
сис.излаз (1)
 
# Поставите име директоријума из командног аргумента
име_дирка = сис.аргв [1]
 
# Подесите назив зип датотеке
зипФилеНаме = дир_наме + ".зип "
 
# Позовите функцију за преузимање свих датотека и директоријума додељеног директоријума
филеПатхс = ретриеве_филе_патхс (име_дир)
 
# одштампајте списак датотека за зиповање
принт ('Следећа листа датотека биће компримована:')
за филеНаме у филеПатхс:
принт (филеНаме)
 
# записујте датотеке и фасцикле у зип датотеку
зип_филе = зипфиле.ЗипФиле (зипФилеНаме, 'в')
са зип_филе:
# сваку датотеку напишите засебно
за датотеку у филеПатхс:
зип_филе.писање (датотека)
 
принт (датотека зипФилеНаме + 'је успешно креирана!')
 
# Позовите главну функцију
ако је __наме__ == "__главно__":
главни()

Покрените скрипту

$ питхон3 зипцоде3.пи

тест даје се као име директоријума у ​​аргументу командне линије. Величина тест је 21 бајта а након компресије величина тест.зип је 2 бајта.

Надам се да ће вам овај водич помоћи да користите питхон за компримовање било које датотеке или директоријума.

Преглед бежичног миша Мицрософт Сцулпт Тоуцх
Недавно сам читао о Мицрософт Сцулпт Тоуцх бежични миш и одлучио да га купи. Након што сам га неко време користио, одлучио сам да са њим поделим своје...
Екран Трацкпад и показивач миша АппиМоусе за Виндовс таблете
Корисницима таблета често недостаје показивач миша, посебно када су уобичајени за коришћење преносних рачунара. Паметни телефони и таблети на додир ос...
Средњи тастер миша не ради у оперативном систему Виндовс 10
Тхе средње дугме миша помаже вам да се крећете кроз дугачке веб странице и екране са пуно података. Ако се то заустави, на крају ћете користити тастат...