Сегодня у нас в препараторской страшный зверь по имени Spark. Установка локальной версии (для «поиграться самое оно, вообще ничего настраивать не обязательно, чтобы уже что-то делать) в макоси: нужна java-машина, так что если у нас нет джавы, то дуем на java.oracle.com, качаем и ставим. На данный момент (декабрь 17-го) имеет смысл брать версию 1.8 —
Рубрика: Python
Небольшой хинт в Python
Бывает необходимо массив с числами преобразовать в строку через запятую. Ну, например, у вас в массиве ID’шки, которые надо списком вставить в запрос. К сожалению, ",".join(arr) нам тут не поможет — ругнётся на то, что джойну нужны строки, а ему дали числа. И что же делать? Рисовать супер-мега конвертер? Ну уж нет 🙂 str(arr)[1:-1] Вуаля! Мы
Архивирование ZIP’ом
Собственно, всё просто. Создаём объект архива, затем пишем в него какие-то файлы (в arcname можем указать с каким именем файл будет в архиве; если не укажем — по полному пути всё полезет) и в конце закрываем объект.
1 2 3 4 5 6 |
import zipfile archfile = r'С:\myfile.zip' arch = zipfile.ZipFile( archfile, mode='w', compression=zipfile.ZIP_DEFLATED ) arch.write( r'D:\my\path\to\file\some-file.txt', arcname=r'some-file.txt' ) arch.close() |
Подключение к удалённой базе в PonyORM
Подключение к MySQL:
1 2 3 4 5 6 7 8 9 10 11 |
from pony.orm import * import sys try: db = Database() db.bind( 'mysql', host='host-ip-or-domain', user='db-user', passwd='user-pass', db='db-name') except Exception as e: print('Не удалось подключиться к базе данных: %s' % str(e)) sys.exit(1) |
Подключение к Oracle:
1 2 3 4 5 6 7 8 |
from pony.orm import * import sys try: db = Database('oracle', 'db-user/user-pass@host-ip:port/db-name') except Exception as e: print('Не удалось подключиться к базе данных: %s' % str(e)) sys.exit(1) |
Конечно же, вам необходимы и соответствующие драйвера.
Установка Django в Ubuntu
В принципе, установка джанги в убунте мало отличается от установки её же в других linux-системах. И всё же отличия имеются и вполне способны сбить с толку новичка, не привыкшего к линуксу. В процессе установки предполагается, что вы собираетесь создать сайт с именем www.mysite.com, код которого будет находиться в папке /var/www/mysite.
Python. Многопоточность
Недавно была такая задача: был простенький скрипт стягивал в вебе странички. очень нужные странички, как оказалось. И, как обычно на вчера, нужно было сделать этот скрипт сделать многопоточным, чтобы странички скачивались быстрее. Порыл в нете на эту тему — есть довольно много интересных оберток для стандартного модуля threading , но увы, как правило они были
Python. обертка для Logger v2
Всем привет. Извиняйте что пропал надолго — ремонт:) Благо уже недолго мучаться осталось, на днях все будет готово, и время будет гораздо больше. Увидел свежие комменты на статью Logger. Quick start и не смог пройти мимо:) Итак, представляю обертку надо логгером — как я ее вижу.
Python. Модуль unittest
Думаю, никому из здесь присутствующих не нужно объяснять, что такое юниттесты и зачем они нужны. Поэтому сразу перейдём к делу и взглянем на пример:
Python. Модули pdb и profile
Модуль pdb используется для отладки. Лучше всего познакомиться с этим модулем можно на примере. Скажем, у нас есть такой скрипт:
Python. Генераторы
Скажу честно — такой штуки я пока в других языках не встречал. По крайней мере, не припомню. Я имею в виду не просто некий объект или функцию, при помощи которых можно генерировать некоторые значения. В питоне генераторы замечательны тем, что они не хранят все значения и не выдают весь список сразу. Генератор здесь — вполне