Простой Python. современный стиль программирования - читать онлайн бесплатно полную версию книги . Страница 308

она может отправиться домой в Канзас, просто стукнув каблучком о каблучок. Даже

когда я был моложе, я думал: «И она говорит об этом только сейчас?!» Хотя теперь

я понимаю, что фильм был бы гораздо короче, если бы волшебница дала такой

совет раньше.

Вот только мы живем не в фильме, здесь мы говорим о мире бизнеса, где со-

кращение времени на выполнение задач — это хорошо. Позвольте мне поделиться

с вами парой советов. Большинство инструментов, которые вам понадобятся для

повседневной работы с данными в бизнесе, вы уже знаете, поскольку прочитали

о них в этой книге. Среди таких инструментов высокоуровневые структуры данных

вроде словарей и объектов, тысячи стандартных и сторонних библиотек, а также

сообщество экспертов, которое можно найти в поисковике.

Если вы программист, который пишет программы для бизнеса, ваш рабочий

поток практически всегда содержит следующее.

1. Извлечение данных из файлов странных форматов или баз данных.

2. «Очистку» данных, которая охватывает множество областей, заполненных

острыми объектами.

3. Преобразование дат, времени и наборов символов.

4. Выполнение каких-либо действий над данными.

Обработка бизнес-данных

399

5. Сохранение полученного результата в базе данных.

6. Откат к первому шагу: намылить, смыть, повторить.

Рассмотрим пример: вам нужно переместить данные из электронной таблицы

в базу данных. Вы можете сохранить таблицу в формате CSV и использовать библио-

теки Python, показанные в главе 8. Или же найти модуль, который считывает непо-

средственно бинарный формат электронной таблицы. Ваши пальцы знают, как на-

брать строку python excel в поисковике и найти сайты вроде Working with Excel files

in Python (http://www.python-excel.org/). Вы можете установить один из необходимых

пакетов с помощью pip и найти драйвер базы данных для Python, чтобы выполнить

последнюю часть задания. Я упоминал SQLAlchemy и непосредственные драйверы

базы данных в той же главе. Теперь вам нужно написать промежуточный код, и имен-

но здесь структуры данных и библиотеки Python могут сэкономить ваше время.

Попробуем выполнить поставленную задачу, а затем выполнить ее снова, но

уже используя библиотеки, которые позволяют сэкономить немного времени.

Мы считаем CSV-файл, агрегируем все числа в одной колонке, упорядочив их по

уникальному значению, и выведем результат на экран. Если бы мы решали задачу

с помощью SQL, то использовали бы SELECT, JOIN и GROUP BY.

Для начала рассмотрим файл zoo.csv, который содержит следующую инфор-

мацию: тип животного, сколько раз оно укусило посетителя, количество потре-

бовавшихся швов и сумма, которую мы заплатили посетителю за то, чтобы он

ничего не говорил журналистам:

animal,bites,stitches,hush

bear,1,35,300

marmoset,1,2,250

bear,2,42,500

elk,1,30,100

weasel,4,7,50

duck,2,0,10

Мы хотим узнать, какое животное обходится нам дороже всего, поэтому агре-

гируем общую сумму взяток для каждого типа животного (количеством укусов