Строим «график счастья» на Python




Зима – это очень красивое время года. Однако многие из нас замечают, что в эту пору уходить на работу приходится, когда еще темно, а приходить домой, когда уже темно. Поэтому, в этой статье мы попытаемся визуализировать данные о восходе-заходе солнца и соотнести их с привычным для большинства людей режимом дня (работа и бодрствование). Работу мы будем выполнять на Python (pandas + matplotib). Посмотрим, что получится.

Закон Мура – властелин мира!




Посетив сегодня магазин электроники и отдав немалую сумму за самый современный и навороченный девайс, вам не придется особо долго радоваться. Где-то через годик-полтора вы поймете, что ваше суперсовременное микропроцессорное устройство уже устарело. Сейчас сфера производства микропроцессоров развивается очень быстро. А закон геометрической прогрессии Мура все это подтверждает.
В чем его суть? Правильнее его будет назвать даже не законом, а теорией, предположением, которые высказал Гордон Мур, сооснователь корпорации Intel. Но, как бы там ни было, его предположение имеет право на жизнь.
Создание сайта на Python




Статья будет полезна тем, кто хотя-бы минимально разбирается в Python. Наверняка каждый пользователь интернета знает, что такое браузерные MMO(RPG) игры. В наше время они встречаются очень часто. Причем они бывают самыми разными – как простейшими текстовыми играми, так и агрегатами на HTML5 или Flash. К тому же, вы можете использовать в своей игре несколько разных технологий одновременно.
Простое ускорение Python-скриптов




Отбор валидных мобильных номеров друзей «Вконтакте» на Python




Многие, изучающие Python интересуются его использованием в связке с API Вконтакте. В VK имеется телефонная книга, она в более-менее нормальном формате отображает мобильные номера ваших друзей. А учитывая то, что далеко не каждый человек охотно оставляет там свой валидный (полный) номер телефона, будет весьма интересно и полезно написать скрипт, который будет отбирать исключительно валидные мобильные номера и выводить их в отдельную таблицу. Наша телефонная книга будет создавать CSV-файл, который впоследствии можно будет открывать, к примеру, в Excel.
Свой сервис для загрузки альбомов на Python




Порой появляется необходимость в скачке всех изображений из альбома сообщества. В интернете есть подходящие сервисы, но все они платные, соответственно по понятной причине для многих не подойдут. В таком случае, мы напишем свой сервис.
Для разработки возьмем Python. В нашем примере мы будем писать приложение для уже существующего проекта на Django. Итак, начнем.
Создаем приложение Вконтакте, и указываем сайт, на котором будет размещен наш сервис. Получаем данные приложения, которые необходимо записать в наше приложения.
Разработка на Django под Windows при помощи Docker-machine




В этой статье мы поговорим о решении проблемы настройки окружения для разработки на Django в Windows.
В нашем примере воспользуемся такой связкой:
- Docker-machine.
- PyCharm.
А в Docker-machine используются:
- PostgreSQL.
- Data container для PostgreSQL.
- Redis.
- Непосредственно приложение на Django.
Метаданные в SQLite




Метаданные – это информация о данных в базе данных. Метаданные в SQLite содержат в себе информацию о таблицах и столбцах, в которых мы храним данные. Количество строк под воздействием оператора SQL – это метаданные. Количество строк и столбцов, возвращаемые в результирующий набор, также относятся к метаданным. Метаданные в SQLite могут быть получены с использованием команды PRAGMA. Объекты SQLite могут иметь атрибуты, которые являются метаданными. Наконец, мы также можем достать определённые метаданные от запроса таблицы sqlite_master системы SQLite.
#!/usr/bin/python
# -*- coding: utf-8 -*-
import sqlite3 as lite
import sys
con = lite.connect('test.db')
with con:
cur = con.cursor()
cur.execute('PRAGMA table_info(Cars)')
data = cur.fetchall()
for d in data:
print d[0], d[1], d[2]
В этом примере, мы пускаем в обращение команду PRAGMA table_info(tableName), чтобы получить некоторую метаинформацию о нашей таблице Cars.
Вложение декораторов в Python




Иногда одного декоратора бывает недостаточно. Для поддержки многоступенчатых расширений синтаксис декораторов позволяет добавлять несколько уровней обертывающей логики к декорируемой функции или методу. При использовании такой возможности каждый декоратор должен указываться в отдельной строке. Синтаксическая конструкция следующего вида:
@AAA
@BBB
@CCC
def function(...):
...
равноценна следующей:
def f(...):
...
f = AAA(BBB(CCC(f)))
Здесь оригинальная функция передается трем различным декораторам, а получившийся в результате вызываемый объект присваивается оригинальному имени. Каждый декоратор обрабатывает результат, возвращаемый предыдущим декоратором, который может быть оригинальной функцией или объектом-оберткой. Если все декораторы возвращают обертки, то при вызове функции по оригинальному имени будет выполнена логика всех трех обертывающих объектов, расширяя возможности функции тремя различными способами.
Последний декоратор в списке будет задействован первым и окажется самым глубоко вложенным.Далее...
Тестирование программного обеспечения: основные виды


Тестирование программного обеспечения – один из обязательных и крайне важных этапов разработки программного продукта. Задачи специалиста, выполняющего тестирование:
- Своевременное обнаружение возможных ошибок. Перед тем как проект поступит в продажу или будет передан заказчику, необходимо убедиться в полном отсутствии проблем, связанных с работой ПО. Для этого тестировщик выполняет проверку функциональности системы, работает с комбинацией самостоятельных опций, выявляет критические конфликты при исполнении. Только при бесперебойной работе программного обеспечения в рамках документации можно говорить о том, что тестирование прошло успешно.