Sign in:

read us on


Python Code Quality: Tools & Best Practices

In this article, you'll see how to improve the quality of your Python code. We'll analyze and compare tools you can use to take your code to the next level and make it more Pythonic. Whether you've been using Python for a while, or just beginning, you can benefit from the practices and tools talked about here.

PyDev of the Week: William F. Punch

This week we welcome William Punch as our PyDev of the Week. Mr. Punch is the co-author of the book, The Practice of Computing using Python and he is an assistant professor of computer science at Michigan State University. Let’s take a few moments to get to know him better! Can you tell us a little about yourself (hobbies, education, etc): I’m a graduate of The Ohio State University. I did my undergraduate work in organic/bio chemistry and worked for a while in a medical research lab. I found I didn’t like the work as much as I did in college so I looked for something else. Fortunately the place I worked offered continuing education so I started going to school at night at the University of Cincinnati to study chemical engineering. I thought I could get through that quickly given my background. The first courses I took were computer science courses and I was completely taken with them. I changed to CS and eventually went back to OSU and got my Ph.D. As a chemist I was always fascinated with glasswork, and so I do glass blowing in my town when I have the time. Continue reading PyDev of the Week: William F. Punch →


9 платных, условно-бесплатных и бесплатных программ для трекинга кода приложений

Трекинг кода must-have в среде разработки. Но вот насколько нужен этот же инструмент в продуктиве? Тот, кто лишь кропотливо собирает логи скажет «ну его нафиг, мой ELK меня не подводит» и будет по-своему прав. До поры до времени.

Хочу научиться программировать на Python. С чего начать?

Рассказываем, как действовать, если вы решили освоить Python 3 с нуля: что учить в первую очередь, где брать знания и что делать дальше?

Ваш вклад в сообщество Python


Jupyter Notebook 101 Preview Chapters

I am currently working on a new book called Jupyter Notebook 101 that I am planning to release in November 2018. I have put together a PDF that shows a rough draft of the first couple of chapters of the book along with an appendix. You can check out the PDF here: jupyternotebook101-preview If you would like to pre-order the book or just learn more about it, you can do so on Kickstarter.


Documenting Python Code: A Complete Guide

A complete guide to documenting Python code. Whether you're documenting a small script or a large project, whether you're a beginner or seasoned Pythonista, this guide will cover everything you need to know.

Мониторинг в Python проекте

Python 101: Episode #17 – The email and smtp modules

Learn how to use Python’s email and smtp modules in this video. You can also read the written version of this video here: or get the book here:

Understanding Tracebacks in Python

When you are first starting out learning how to program, one of the first things you will want to learn is what an error message means. In Python, error messages are usually called tracebacks. Here are some common traceback errors: SyntaxError ImportError or ModuleNotFoundError AttributeError NameError When you get an error, it is usually recommended that you trace through it backwards (i.e. traceback). So start at the bottom of the traceback and read it backwards. Let’s take a look at a few simple examples of tracebacks in Python. Continue reading Understanding Tracebacks in Python →


Fast, Flexible, Easy and Intuitive: How to Speed Up Your Pandas Projects

What is it about Pandas that has data scientists, analysts, and engineers raving? This is a guide to using Pandas Pythonically to get the most out of its powerful and easy-to-use built-in features. Additionally, you will learn a couple of practical time-saving tips.

PyDev of the Week: Christopher Neugebauer

This week we welcome Christopher Neugebauer (@chrisjrn) as our PyDev of the Week! Christopher helped organize North Bay Python and PyCon Australia. He is also a fellow of the Python Software Foundation. You can catch up with him on Github or on his website. If you are interested in being a part of the North Bay Python 2018 conference, you can submit a proposal here. Now let’s take a few moments to get to know him better! Can you tell us a little about yourself (hobbies, education, etc): I’m originally from Hobart, the capital city of the Australian state of Tasmania, but these days, I live with my fiancé, Josh, in Petaluma, California. I hold a BSc in Computer Science and Mathematics from the University of Tasmania, and my current day job is in software engineering: I currently work on search ranking at Shutterstock. I’m a volunteer conference organiser by the rest of the day, my current project is the North Bay Python conference, but I’ve also been a co-lead organiser of PyCon Australia. I’ve been a Fellow of the Python Software Foundation since 2013. On that note, we just announced dates for North Bay Python 2018 — it’ll be on November 3 & 4 in Historic Downtown Petaluma, California. You should follow us on Twitter at @northbaypython, or at least sign up to our newsletter at Continue reading PyDev of the Week: Christopher Neugebauer →

Оптимизации, используемые в Python: список и кортеж

В Python, есть два похожих типа — список (list) и кортеж (tuple). Самая известная разница между ними состоит в том, что кортежи неизменяемы. Вы не можете изменить объекты в tuple: >>> a = (1,2,3) >>> a[0] = 10 Traceback (most recent call last): File "", line 1, in TypeError: 'tuple' object does not support item assignment Но вы можете модифицировать изменяемые объекты внутри кортежа: >>> b = (1,[1,2,3],3) >>> b[1] [1, 2, 3] >>> b[1].append(4) >>> b (1, [1, 2, 3, 4], 3)

Обновление Django с версии 1.9 до версии 2.0

Здравствуйте, сегодня я хотел бы вам рассказать о том, как обновить проект с версии 1.9 до 2.0. Какие основные нюансы нужно учесть и переписать, дабы проект стартовал на новой версии Django. Первый шаг. Это обновление Django до версии 2.0, а также обновление всех сопутствующих ваших пакетов, которые используются в проекте, т.к. я использую виртуальное окружение и requirements.txt, то для меня это один способ, для вас может быть другой. После того как вы обновили все пакеты, не стоит запускать проект, он всё равно не запустится, поэтому сразу приступим к исправлению всех основных моментов, дабы проект стартанул.


PyDev of the Week: Katharine Jarmul

This week we welcome Katharine Jarmul (@kjam) as our PyDev of the Week! Katherine is the co-author of Data Wrangling with Python . She is also the co-founder of KIProtect. You can catch up with the projects she works on over on Github. Let’s take some time to get to know her better! Can you tell us a little about yourself (hobbies, education, etc): Sure! I first started working on computers building fan websites for house music in the 90s with my dial-up shared Windows 95 computer. Since then, I have had a love / hate relationship with computers and what is now called data science. I have some formal education with math, statistics and computer science, but also learned most of what I do on my own and therefore am proud to count myself a member of the primarily self-taught folks. For fun, I like to cook and eat with friends, read news or arXiv papers and rant with like-minded folks on and offline.  (I am @kjam on Twitter…) Continue reading PyDev of the Week: Katharine Jarmul →


Lists and Tuples in Python

You'll cover the important characteristics of lists and tuples in Python 3. You'll learn how to define them and how to manipulate them. When you're finished, you should have a good feel for when and how to use these object types in a Python program.

ANN: Jupyter Notebook 101 Kickstarter

I am happy to announce my latest Kickstarter which is to raise funds to create a book on Jupyter Notebook! Jupyter Notebook 101 will teach you all you need to know to create and use Notebooks effectively. You can use Jupyter Notebook to help you learn to code, create presentations, make beautiful documentation and much more! The Jupyter Notebook is also used by the scientific community to demonstrate research in an easy-to-replicate manner. You will learn the following in Jupyter Notebook 101: How to create and edit Notebooks How to add styling, images, graphs, etc How to configure Notebooks How to export your Notebooks to other formats Notebook extensions Using Notebooks for presentations and more! Release Date I am planning to release the book in November, 2018 You can learn more on Kickstarter!

Python 101: Episode #16 – The os Module

In this episode you will learn about Python’s os module. This episode is based on my book, Python 101, which you can get on Leanpub here or read online at

В объятьях Питона (только для женщин)

Я, как всегда, никуда не собиралась, когда в новостной ленте «ВКонтакте» вдруг увидела сообщение, что завтра последний день подачи заявок на Django Girls в Санкт-Петербурге — мастер-класс по программированию на Python для женщин. Обычно я читаю такие сообщения, когда регистрация на мероприятие уже закрыта. У меня особое везение на такие дела — узнать о событии на следующий день после его завершения. Поэтому, когда я поняла, что появилась реальная возможность попасть на бесплатный тренинг по Python, то быстро заполнила заявку, на всякий случай забронировала отель и стала ждать. Мне кажется, я сразу знала, что меня примут, иначе как объяснить, что я проморгала аналогичное событие в Москве месяцем раньше и попала именно в Санкт-Петербурге! Можно ли придумать лучшее время для поездки: лето и белые ночи, чемпионат мира с возможностью посетить фан-зону на Конюшенной площади, знакомство с IT-сообществом Django Girls и офисом Wargaming, и под занавес праздник «Алые паруса»!


Generating Random Data in Python (Guide)

You'll cover a handful of different options for generating random data in Python, and then build up to a comparison of each in terms of its level of security, versatility, purpose, and speed.

My (abridged) Career in Python – Podcast.__init__ Interview

I was recently interviewed by Tobias Macey (@TobiasMacey) on Podcast.__init__ (@Podcast__init__) about some of the things I have done in my career as a Python programmer. You can listen in here: And if you missed it earlier this year, I was also on the Talk Python to Me podcast talking about the history of Python, among other topics.


Программа PYCON RUSSIA готова: 25 докладов и 3 воркшопа от спикеров из Google, Red Hat, Yelp, Яндекса

Осталось чуть меньше двух недель до шестого российского PyConRu. Конференция пройдет 22-23 июля в отеле «Cronwell Яхонты Таруса» в 95 км от Москвы (до места проведения и обратно будет трансфер). Сейчас в программе 25 докладов и 3 воркшопа. Кроме этого, впервые в России мы проведем Core Development Panel. Три Python Core Developer-а: Юрий Селиванов (EdgeDB, Канада), Андрей Светлов (aiohttp, Украина) и Christian Heimes (Red Hat, Германия) ответят на любые вопросы из зала: про будущее python, про проблемы, сообщество и все, что вас интересует. В общем, готовьте вопросы, будет интересно! Ну и сейчас — самое время посмотреть на программу и зарегистрироваться, если вы откладывали это. Под катом коротко про все доклады конференции.


Strings and Character Data in Python

In this tutorial you'll learn how to use Python's rich set of operators, functions, and methods for working with strings. You'll learn how to access and extract portions of strings, and also become familiar with the methods that are available to manipulate and modify string data in Python 3.

PyDev of the Week: Ryan Kirkbride

This week we welcome Ryan Kirkbride (@ryankirkbride26) as our PyDev of the Week! Ryan is the creator of Foxdot, a live coding library for live coding music in an interactive Python editor. You can see what projects Ryan is a part of by going to his Github page. Let’s take a few moments to get to know Ryan! Can you tell us a little about yourself (hobbies, education, etc): I’m currently doing a PhD at the University of Leeds in the School of Music researching collaborative tools for live coding music. Live coding is basically interactive programming for creating music or visuals and probably my favourite thing to do right now. There’s a growing scene called “Algorave” where live coders get together to make music for people to dance to and they’re a lot of fun to perform at. Continue reading PyDev of the Week: Ryan Kirkbride →


Реверсим с Python-ом олдскульную игру Super Mario

В этой статье мы собираемся зареверсить Super Mario Bros 1985 года, чтобы извлечь изображение фона. Конечно, это всё можно попробовать сделать с помощью компьютерного зрения, однако представленный здесь способ, вероятно, несколько интереснее. Весь исходный код доступен на GitHub.


Формула Таппера и реализация алгоритма на Python

Вместо предисловия Не так давно на просторах интернета узнал о такой замечательной и удивительной копии Вавилонской библиотеки как о формуле Таппера. Вернее, это больше неравенство Таппера, чем формула. Особенность данного неравенства — оно создает собственное же изображение на графике. Просто посмотрите на это чудо!


Python String Formatting

Learn the four main approaches to string formatting in Python, as well as their strengths and weaknesses. You'll also get a simple rule of thumb for how to pick the best general purpose string formatting approach in your own programs.


Python Histogram Plotting: NumPy, Matplotlib, Pandas & Seaborn

In this tutorial, you'll be equipped to make production-quality, presentation-ready Python histogram plots with a range of choices and features. It's your one-stop shop for constructing & manipulating histograms with Python's scientific stack.


PyDev of the Week: Ricky White

This week we welcome Ricky White (@EndlessTrax) as our PyDev of the Week. Ricky is the owner of White Lion Media. He is also the Community Manager at Real Python. If you go to his website, you will find that he has written some non-technical books, which is pretty neat. You can also check out his Github profile to see what projects he is working on. Let’s take a few minutes to get to know Ricky! Can you tell us a little about yourself (hobbies, education, etc): I’m originally from Leicester, England. And I moved to the U.S. in late October 2014. Prior to moving to the U.S., I was a registered nurse specializing in ICU care. When we immigrated to Virginia, my wife and I swapped roles within the household, and she went back to work as I became a stay-at-home dad to our then 3-year-old son, and 6-month-old daughter. A job I wouldn’t change for the world. The last 3.5 years have been far from dull, and so much has happened. Not least of all, I’ve authored two books. I’ve learned how to code. And achieved a lifelong ambition of starting my own business. Apparently looking after two small children wasn’t tiring enough, and I apparently hate sleep… When I’m not fulfilling my primary role in life, writing, or slinging some code, I’m usually residing in the dojo. I’m a passionate martial artist who holds the rank of Shodan (first-degree black belt), and I dedicate some of my time each week to teaching other students the art and helping them to grow. I also suffer from a chronic degenerative disease called Ankylosing Spondylitis. I have been a patient advocate since I was diagnosed in 2010, and currently work as the vice-chairman of a 501c3 non-profit — which I helped co-found — that aims to raise the awareness of the disease for which 2.7 million people suffer in the U.S. (that’s more than MS and Parkinson’s combined!) The charity is called Walk AS One. And just for fun, I play chess and have a mild-moderate bonsai addiction, of which I have a modest collection. Continue reading PyDev of the Week: Ricky White →

Python 101 Screencast: Episode #14 – The configparser module

In this screencast, you will learn the basics of using Python’s configparser module