Top Ten Articles of 2013
Happy New Year! It’s the end of 2013 and the beginning of 2014, so it’s time to see which articles made it into the top ten list this year. I ran the statistics on December 31st and came up with the...
View ArticleReportlab: How to Create Landscape Pages
The other day I had an interesting task I needed to complete with Reportlab. I needed to create a PDF in landscape orientation that had to be rotated 90 degrees when I saved it. To make it easier to...
View ArticlewxPython: Creating a Simple RSS Reader
Really Simple Syndication (RSS) has been with us for a long time and allows us to see new articles on our favorite website easily. Python doesn’t have an RSS reader module in the standard library, so...
View ArticleReal Python: Advanced Web Development Preview Chapter
The Real Python: Advanced Web Development, featuring Django 1.6 KickStarter campaign released a preview chapter today called “Software Craftmanship”. It is the first chapter from the book. The PDF...
View ArticlePython: Packaging with Wheel
Python’s first mainstream package was the .egg file. Now there’s a new format in town called the Wheel (*.whl). A wheel “is designed to contain all the files for a PEP 376 compatible install in a way...
View ArticlewxPython: ObjectListview – How to Double-click items
The other day I was working on a project where I was using the fabulous ObjectListView widget (a wrapper around wx.ListCtrl) and I wanted to add the ability to double-click an item in the control to...
View ArticleHow to Create “Immutable” Classes in Python
I’ve been reading a lot about Python’s magic methods lately and recently read about a couple of ways to create an immutable class. An immutable class does not allow the programmer to add attributes to...
View ArticlePython 201: Properties
Python has a neat little concept called a property that can do several useful things. In this article, we will be looking into how to do the following: Convert class methods into read-only attributes...
View ArticlePython 201: What is super?
The Python programming language added the super() type back in version 2.2. For some reason, it’s still a topic that a lot of beginners don’t understand. One of my readers recently asked me about it...
View ArticlewxPython: Wrap Widgets with WrapSizer
wxPython 2.9 introduced the world to a new type of sizer that can take widgets and automatically make them “wrap” around as you resize the frame. That sizer is known as wx.WrapSizer. For some reason,...
View ArticlewxPython: An Introduction to Sized Controls
The wxPython toolkit provides an alternative to using Sizers for layout that is known as “sized_controls”. These controls or widgets are basically top-level widgets (like frame, panel, dialog, etc)...
View ArticlePython 201: An Intro to Generators
The topic of generators has been covered numerous times before. However, it’s still a topic that a lot of new programmers have trouble with and I would hazard a guess that even experienced users don’t...
View ArticleeBook Review: Learn Python the Hard Way
A few years ago, a fellow named Zed Shaw created a website called Learn Python the Hard Way that a lot of people praised. The website is made up of lots of short exercises that help beginner...
View ArticlewxPython: Creating a File Downloading App
I’ve been thinking about creating a simple downloading script with wxPython for quite a while. Then I saw someone on StackOverflow asking about how to do it and I decided it was time to figure it out....
View ArticleHow to Time Small Pieces of Python Code with timeit
Sometimes when you are coding, you want to know how long it takes for a particular function to run. This topic is known as profiling or performance tuning. Python has a couple of profilers built into...
View ArticlewxPython: How to Catch All Exceptions
One of my friends on the wxPython Google Group asked how to catch any exception that happens in wxPython. The problem is complicated somewhat because wxPython is a wrapper on top of a C++ library...
View ArticleMost Popular Language on CodeEval.com? Python!
What’s the most popular language of 2013? According to CodeEval.com, it’s Python! If you compare that with TIOBE, Python is only at #8, but at least it’s still in the top ten! Hopefully Python will...
View ArticlePython: How to Create Rotating Logs
Python’s logging module has lots of options. In this article, we will looks at the logging module’s ability to create Rotating Logs. Python supports two types of rotating logs: Rotate logs based on...
View ArticleeBook Review: Learning scikit-learn: Machine Learning in Python
The people at Packt Publishing recently sent me an ebook copy of Raúl Garreta and Guillermo Moncecchi’s book, Learning scikit-learn: Machine Learning in Python to review. Machine learning isn’t a...
View ArticlePython 101: How to Change a Dict Into a Class
I work with a lot of dictionaries at my job. Sometimes the dictionaries get really complicated with lots of nested data structures embedded within them. Recently I got a little tired of trying to...
View Article