Питхон

Манипулација Екцел табелама помоћу Питхона

Манипулација Екцел табелама помоћу Питхона

Мицрософт Екцел је софтвер за прорачунске табеле који се користи за складиштење и управљање табеларним подацима. Даље, у програму Екцел могу се извршити прорачуни применом формула на податке и могу се произвести визуализације података.Многи задаци изведени у прорачунским табелама, попут математичких операција, могу се аутоматизовати путем програмирања, а многи програмски језици имају модуле за манипулисање Екцел прорачунским таблицама. У овом упутству ћемо вам показати како да користите Питхонов опенпикл модул за читање и модификовање Екцел табела.

Инсталирање опенпикл-а

Да бисте могли да инсталирате опенпикл, морате да инсталирате пип. Пип се користи за инсталирање Питхон пакета. Покрените следећу команду у командној линији да бисте видели да ли је пип инсталиран.

Ц: \ Усерс \ виндовс> пип хелп

Ако се врати помоћни садржај пипа, тада се пип инсталира; у супротном, идите на следећу везу и преузмите гет-пип.пи датотека:

хттпс: // боотстрап.пипа.ио / гет-пип.пи

Сада покрените следећу команду да бисте инсталирали пип:

Ц: \ Корисници \ виндовс> питхон гет-пип.пи

Након инсталирања пип-а, следећа наредба се може користити за инсталирање опенпикл-а.

Ц: \ Усерс \ виндовс> пип инсталл опенпикл

Израда Екцел документа

У овом одељку користићемо модул опенпикл за креирање Екцел документа. Прво отворите командну линију тако што ћете откуцати 'цмд' у траку за претрагу; затим унесите

Ц: \ Корисници \ виндовс> питхон

Да бисмо креирали Екцел радну свеску, увеземо модул опенпикл, а затим ћемо помоћу методе 'Воркбоок ()' креирати радну свеску.

>>> # увоз модула опенпикл
>>> увози опенпикл
>>> # Иницијализација радне свеске
>>> радна књига = опенпикл.Радна свеска()
>>> # чување радне свеске као 'пример.клск '
>>> радна_књига.саве ('пример.клск ')

Горе наведене команде креирају Екцел документ који се назива пример.клск. Даље ћемо манипулисати овим Екцел документом.

Манипулација листовима у Екцел документу

Створили смо Екцел документ који се зове пример.клск. Сада ћемо манипулисати листовима овог документа користећи Питхон. Модул опенпикл има методу 'цреате_схеет ()' која се може користити за креирање новог листа. Ова метода узима два аргумента: индекс и наслов. Индекс дефинише положај листа помоћу било ког негативног целог броја (укључујући 0), а наслов је наслов листа. Листа свих листова у објекту ворк_боок може се приказати позивањем листе имена листова.

>>> # увоз опенпикл-а
>>> увези опенпикл
>>> # учитавање постојећег Екцел документа у објекат ворк_боок
>>> радна књига = опенпикл.лоад_воркбоок ('пример.клск ')
>>> # Креирање новог листа са 0. индексом
>>> радна_књига.цреате_схеет (индекс = 0, наслов = 'Први лист')

>>> # Добијање свих табела
>>> радна_књига.имена листова
['Први лист', 'Лист']
>>> # Спремање Екцел документа
>>> радна_књига.саве ('пример.клск ')

У горњем коду креирали смо лист под називом Први лист и поставили га на 0. индекс. Лист који се претходно налазио на 0. индексу премештен је на 1. индекс, као што је приказано у излазу. Сада ћемо променити име оригиналног листа са Схеет у Сецонд Схеет.

Атрибут наслова садржи име листа. Да бисмо преименовали лист, прво морамо доћи до тог листа на следећи начин.

>>> # Преузимање активног листа из програма Екцел Доцумент
>>> лист = радна_књига.активан
>>> # Назив листа за штампање
>>> испис (лист.наслов)
Први лист >>> # Навигација до другог листа (у индексу 1)
>>> радна_књига.активан = 1
>>> # Добијање активног листа
>>> лист = радна_књига.активан
>>> # испис назива листа
>>> испис (лист.наслов)
Лист >>> # Промена наслова листа
>>> лист.титле = 'Други лист'
>>> # Наслов листа за штампање
>>> испис (лист.наслов)
Други лист

Слично томе, можемо уклонити лист из Екцел документа. Модул опенпикл нуди методу ремове () за уклањање листа. Ова метода као аргумент узима име листа који се уклања, а затим уклања тај лист. Други лист можемо уклонити на следећи начин:

>>> # уклањање листа по имену
>>> радна_књига.уклони (ворк_боок ['Други лист'])
>>> # добивање свих листова
>>> радна_књига.имена листова
['Први лист']
>>> # чување Екцел документа
>>> радна_књига.саве ('пример.клск ')

Додавање података у ћелије

До сада смо вам показали како да креирате или избришете листове у Екцел документу. Сада ћемо додати податке ћелијама различитих листова. У овом примеру имамо један лист под називом Фирст Схеет у нашем документу и желимо да направимо још два листа.

>>> # увоз опенпикл-а
>>> увози опенпикл
>>> # учитавање радне свеске
>>> радна књига = опенпикл.лоад_воркбоок ('пример.клск ')
>>> # Креирање новог листа по 1. индексу
>>> радна_књига.цреате_схеет (индекс = 1, наслов = 'Други лист')

>>> # стварање новог листа на другом индексу
>>> радна_књига.цреате_схеет (индекс = 2, наслов = 'Трећи лист')

>>> # добивање свих листова
>>> радна_књига.имена листова
['Први лист', 'Други лист', 'Трећи лист']

Сада имамо три листа и додаћемо податке у ћелије ових листова.

>>> # Добијање првог листа
>>> лист_1 = радна књига ['Прва табела']
>>> # Додавање података у ћелију 'А1' првог листа
>>> схеет_1 ['А1'] = 'Име'
>>> # Добијање другог листа
>>> лист_2 = радна књига ['Други лист']
>>> # Додавање података у ћелију 'А1' другог листа
>>> схеет_2 ['А1'] = 'ИД'
>>> # Добијање трећег листа
>>> лист_3 = радна књига ['Трећи лист']
>>> # Додавање података у ћелију 'А1' трећег листа
>>> схеет_3 ['А1'] = 'Оцене'
>>> # Чување Екцел радне свеске
>>> радна_књига.саве ('пример.клск ')

Читање Екцел табела

Модул опенпикл користи атрибут вредности ћелије за чување података те ћелије. Податке у ћелији можемо читати позивањем атрибута вредности ћелије. Сада имамо три листа и сваки лист садржи неке податке. Податке можемо читати користећи следеће функције у опенпикл-у:

>>> # увоз опенпикл-а
>>> увези опенпикл
>>> # учитавање радне свеске
>>> радна књига = опенпикл.лоад_воркбоок ('пример.клск ')
>>> # Добијање првог листа
>>> лист_1 = радна књига ['Прва табела']
>>> # Добијање другог листа
>>> лист_2 = радна књига ['Други лист']
>>> # Добијање трећег листа
>>> лист_3 = радна књига ['Трећи лист']
>>> # испис података из ћелије 'А1' првог листа
>>> испис (лист_1 ['А1'].вредност)
Име
>>> # испис података из ћелије 'А1' другог листа
>>> испис (лист_2 ['А1'].вредност)
ИД
>>> # испис података из ћелије 'А1' Трећег листа
>>> испис (лист_3 ['А1'].вредност)
Оцене

Промена фонтова и боја

Даље ћемо вам показати како да промените фонт ћелије помоћу функције Фонт (). Прво увезите опенпикл.објекти стилова. Метода Фонт () узима листу аргумената, укључујући:

  • име (низ): назив фонта
  • величина (инт или флоат): величина фонта
  • подвлачење (низ): тип подвлачења
  • боја (жица): хексадецимална боја текста
  • курзив (боол): да ли је фонт у курзиву
  • подебљано (боол): да ли је фонт подебљан

Да бисмо применили стилове, прво морамо створити објекат тако што ћемо све параметре проследити методи Фонт (). Затим бирамо лист, а унутар листа бирамо ћелију на коју желимо да применимо стил. Затим примењујемо стил на изабрану ћелију.

>>> # увоз опенпикл-а
>>> увези опенпикл
>>> # увоз методе фонта из опенпикл-а.стилова
>>> из опенпикл.стилови увоз фонт
>>> # учитавање радне свеске
>>> радна књига = опенпикл.лоад_воркбоок ('пример.клск ')
>>> # Креирање стилског објекта
>>> стиле = Фонт (наме = 'Цонсолас', сизе = 13, болд = Труе,
… Курзив = Нетачно)
>>> # Избор листа из радне свеске
>>> лист_1 = радна књига ['Прва табела']
>>> # Избор ћелије којој желимо да додамо стилове
>>> а1 = лист_1 ['А1']
>>> # Примена стилова на ћелију
>>> а1.фонт = стил
>>> # Чување радне свеске
>>> радна_књига.саве ('пример.клск ')

Примена ивица на ћелије

Можемо применити обрубе на ћелије у Екцел листу користећи методе Бордер () и Сиде () опенпикл-а.стилова.модул граница. Различите функције као параметре можемо проследити на методу Бордер (). Следе неке од функција које се прослеђују као параметри методи Бордер () да би се дефинисале димензије обруба.

  • лево: применити обруб на леву страну ћелије
  • јел тако: применити обруб на десну страну ћелије
  • врх: применити обруб на врх ћелије
  • дно: применити обруб на дно ћелије

Ове функције узимају атрибуте стила као параметре. Атрибут стиле дефинише стил обруба (нпр.г., солидно, испрекидано). Параметри стила могу имати било коју од следећих вредности.

  • двоструко: двострука линија
  • испрекидан: испрекидана граница
  • танак: танка ивица
  • средње: средња граница
  • медиумДасхДот: испрекидана и тачкаста ивица средње тежине
  • дебео: дебела ивица
  • дасхДот: испрекидана и тачкаста граница
  • коса: врло танка ивица
  • тачкаста: тачкана ивица

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

>>> # увоз опенпикл-а
>>> увози опенпикл
>>> # увоз граничних и бочних класа
>>> из опенпикл.стилова.границе увоз Бордер, Сиде
>>> # учитавање радне свеске
>>> радна књига = опенпикл.лоад_воркбоок ('пример.клск ')
>>> # Избор листа
>>> лист_1 = радна књига ['Прва табела']
>>> # Избор различитих ћелија са листа
>>> ћелија_1 = лист_1 ['А1']
>>> ћелија_2 = лист_1 ['Б2']
>>> ћелија_3 = лист_1 ['Ц3']
>>> # Дефинисање различитих стилова обруба
>>> стиле_1 = Бордер (боттом = Сиде (стиле = 'доттед'))
>>> стиле_2 = Граница (десно = Бочно (стиле = 'танко'))
>>> стиле_3 = Бордер (топ = Сиде (стиле = 'дасхДот'))
>>> # примена обруба на ћелије
>>> ћелија_1.бордер = стиле_1
>>> ћелија_2.граница = стил_2
>>> целл_3.граница = стил_3
>>> # Чување радне свеске
>>> радна_књига.саве ('пример.клск ')

Прилагођавање димензија реда и колоне

Висина реда и ширина колоне Екцел документа могу се такође прилагодити помоћу Питхона. Модул опенпикл има две уграђене методе које се могу користити за извођење ових радњи. Прво бирамо лист чији желимо да променимо ширину колоне или висину реда. Затим примењујемо методу на одређени ред или колону.

>>> # увоз опенпикл-а
>>> увези опенпикл
>>> # учитавање радне свеске
>>> радна књига = опенпикл.лоад_воркбоок ('пример.клск ')
>>> # лист за одабир
>>> лист_1 = радна књига ['Прва табела']
>>> # промена висине првог реда
>>> лист_1.ред_дименсионс [1].висина = 50
>>> # Чување радне свеске
>>> радна_књига.саве ('пример.клск ')

Слично томе, можемо променити ширину колоне помоћу следећег кода

>>> # одабир листа из екцелове радне свеске
>>> лист_2 = радна књига ['Други лист']
>>> # промена ширине колоне А
>>> лист_2.цолумн_дименсионс ['А'].ширина = 50
>>> # Чување радне свеске
>>> радна_књига.саве ('пример.клск ')

Горњи код ће променити висину првог реда на 50 бодова и ширину колоне А на 50 поена.

Спајање и раздвајање ћелија

Када радимо са Екцел табелама, често морамо да спајамо и раздвајамо ћелије. За спајање ћелија у Питхону може се користити једноставна функција заснована на опенпикл-у. Модул опенпикл нуди методу мерге_целлс (), која се може користити за спајање ћелија у програму Екцел. Нова ћелија ће добити име горње леве ћелије. На пример, ако желимо да спојимо ћелије из ћелије А1 у ћелију Б2, тада ће новоформирана ћелија бити означена као А1. Да бисмо објединили ћелије помоћу опенпикл-а, прво бирамо лист, а затим примењујемо методу мерге_целлс () на лист.

>>> # увоз модула опенпикл
>>> увози опенпикл
>>> # учитавање радне свеске
>>> радна књига = опенпикл.лоад_воркбоок ('пример.клск ')
>>> # одабир првог листа из екцелове радне свеске
>>> лист_1 = радна књига ['Прва табела']
>>> # спајање ћелија од А1 до Б2 у листу 1
>>> лист_1.мерге_целлс ('А1: Б2')
>>> # чување радне свеске
>>> радна_књига.саве ('пример.клск ')

Слично томе, метода унмерге_целлс () може се користити за раздвајање ћелија у Екцел табели. Следећи код се може користити за раздвајање ћелија:

>>> # одабир листа из радне свеске
>>> лист_1 = радна књига ['Прва табела']
>>> # раздвајање ћелија од А1 до Б2
>>> лист_1.унмерге_целлс ('А1: Б2')
>>> # чување радне свеске
>>> радна_књига.саве ('пример.клск ')

Закључак

Екцел табеле се обично користе за манипулацију подацима. Међутим, такви задаци могу бити монотони. Стога се у таквим случајевима програмирање може користити за аутоматизацију манипулације прорачунским табелама.

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

Како инсталирати и играти Доом на Линук-у
Увод у Доом Доом серија настала је 90-их година након објављивања оригиналног Доом-а. То је био тренутни хит и од тог времена надаље серија игара је д...
Вулкан за кориснике Линука
Са сваком новом генерацијом графичких картица видимо да програмери игара помичу границе графичке верности и долазе на корак од фотореализма. Али упрко...
ОпенТТД вс Симутранс
Стварање сопствене симулације превоза може бити забавно, опуштајуће и изузетно примамљиво. Због тога морате да испробате што више игара како бисте про...