Выдающиеся персидское средство для лечения геморроя

Множество веков персы используют для лечения геморроя дымные ванны. В качестве основных компонентов выступает чеснок или же колючки, которые являются излюбленным лакомством верблюдов. Техника исполнения дымной ванны проста.
 Берется небольшой металлический бидон, на его дно укладывается раскаленный камень или кирпич, и на этот кирпич насыпают измельченный чеснок или бросают верблюжьи колючки. Когда чеснок начнет дымить нужно будет подставить больное место под действие целебного дыма. Этот метод избавления от геморроя позволяет очень быстро справиться с недугом.

Хватит использовать “print” для отладки: пятиминутное введение в модуль logging Python’а (Перевод)

  • Это руководство короткое
  • Для поиска ошибок в коде Вы можете использовать print для просмотра значений переменных
  • НЕ делайте этого. Используйте модуль logging
Модуль logging предпочтительнее, так как:
  • Легко можно поместить указатель времени в каждое сообщение
  • Вы можете использовать разные уровни срочности ваших сообщений и фильтровать их по этому уровню
  • Когда Вы захотите позже найти / изменить лог-сообщения Вы не перепутаете их с другим выводом команды print
  • Если Вы хотите вывести лог в файл, то очень легко будет игнорировать вывод лог-сообщений
Использование pirnt подходит для тех программистов, у которых достаточно времени. Но лучше использовать logging. Кроме того, научитесь использовать отладчик Python для отладки ошибок и Pylint для предотвращения появления ошибок и для того, чтобы сделать код более читаемым.
Для того, чтобы отобразить лог-сообщения на экране, используйте такой код:

import logging
logging.basicConfig(level=logging.DEBUG, format='%(asctime)s - %(levelname)s - %(message)s')
logging.debug('This is a log message.')

Для того, чтобы записывать логи в файл подходит такой код (отличие от предыдущего варианта выделено жирным):

import logging
logging.basicConfig(filename='log_filename.txt',level=logging.DEBUG, format='%(asctime)s - %(levelname)s - %(message)s')
logging.debug('This is a log message.')

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

import logging
logger = logging.getLogger()
logger.setLevel(logging.DEBUG)

formatter = logging.Formatter('%(asctime)s - %(levelname)s - %(message)s')
fh = logging.FileHandler('log_filename.txt')
fh.setLevel(logging.DEBUG)
fh.setFormatter(formatter)
logger.addHandler(fh)
ch = logging.StreamHandler()
ch.setLevel(logging.DEBUG)
ch.setFormatter(formatter)
logger.addHandler(ch)
logger.debug('This is a test log message.')

Убедитесь, что переменная logging глобальная, так что её смогут видеть все функции (использовать в них gloval logger не нужно, так как эта переменная только для чтения, не для записи и изменения).

Уровни логирования, от более срочных до менее срочных:
  1. CRITICAL
  2. ERROR
  3. WARNING
  4. INFO
  5. DEBUG
Вызов setLevel() устанавливает минимальный уровень логирования, нужный Вам. Например, если Вы используете fh.setLevel(logging.ERROR), тогда будут сообщения  с уровнем WARNING, INFO и DEBUG не будут записываться в файл (так как fh - обработчик лог-файла в нашем примере, в отличие от ch, который обрабатывает логи для отображения на экране).
Для записи сообщен
ий разного уровня используйте
:
  1. logger.critical('This is a critical message.')
  2. logger.error('This is an error message.')
  3. logger.warning('This is a warning message.')
  4. logger.info('This is an informative message.')
  5. logger.debug('This is a low-level debug message.')
На самом деле Вы можете делать гораздо больше, но это всё, что Вам надо знать, чтобы больше не использовать print для отладки программ.
Кроме того, функция pprint.pprint() хороша для вывода словарей и списков, особенно вложенных. Попробуйте и увидите.

Последний совет: Вы можете использовать команду tail -f logfile.txt чтобы посмотреть файл, куда будет записываться информация. Опция -f означает “follow (следовать)”. Просто оставьте окно терминала открытым с запущенной командой, и в нем автоматически будет появляться записываемый в файл текст. Этот способ избавит Вас от необходимости открывать текстовый редактор.
Команда tail присутствует на Mac OS X и Linux / *nix. На Windows Вы можете использовать для её получения проект Cygwin.

Автор: Ishayahu Lastov

Сумка с цветами

Сумка с цветами

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

Сумка с цветами

Читать

Итальянские столовые и кабинеты

Итальянская мебель – ведущее направление в мебельном производстве. Относится оно, по большей части, к элитному сегменту.

итальянские кухни классика

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

Читать

Обновляем Ubuntu 12.04 до Ubuntu 12.10

Не сторонник я ставить бета версии, а тем более ещё и альфа. Но внутреннее «хочу», взяло надо мною верх и я полез за обновлениями. У кого уже стоит Ubuntu 12.04 и не охото установливать заново, есть вариант обновления о чем и расскажу ниже. Читать

Утепление стен бани

Утепление стен и перекрытий в бане не такая уже сложная работа, и вполне может быть выполнена самостоятельно. Для этого вам потребуется утеплитель, фольгированный пенофол, фольгированный скотч, деревянные бруски, вагонка.

внутренняя пароизоляция

Баня, в отличие от жилого помещения, эксплуатируется при высокой температуре и влажности. Поэтому особое внимание следует уделить внутренней пароизоляции. Для этой цели лучше всего подойдет фольгированный пенофол, являющийся отличным пароизоляционным материалом для таких помещений. Кроме того, алюминиевая фольга отражает лучистую энергию в банное помещение.

Читать