Tip: Dictionary Substitution With Python's print

09:30 Thu, 23 Sep 2010

You have no doubt been using python's print statement for yonks and are pretty familiar with it. You know that you can use %, the string formatting or interpolation operator. Most people use the standard formatting types of %s, %d, and so on. I have recently changed to using the less common dictionary mapping and here I go through the benefits and why I changed.

Briefly, % is the operator that allows you to do C style sprintf operations. If you don't know them, they let you substitute values into a string, like this: print "%s is the time" % "now" which give the result "now is the time". The '%s' is an indicator to insert a string here, and the string to insert is in the second part of the expression, the 'now'. There are many other types of formatted insertions: int, float, scientific and so on as well as string.

If you do any sort of web programming, you use the print statement a lot. After all, the purpose of your program is to generate HTML for the web server to serve up to your users, and you make

Categories: programming, python

Python Learning Books

12:05 Wed, 07 Jul 2010

I've been spending the last couple of months teaching myself Python properly. I already had some basic knowledge of it, enough to do, say, some tasks equivalent to Bash shell scripting, but I knew I didn't know the language properly. I thought I would jot down some of the references and texts I found useful.

If you know any programming language at all, you will find Python easy. Its syntax is natural and clear. If you have formal programming skills, and by that I mean that you can program in another language fairly proficiently, you will find that Python has an elegance that delights; it is a beautiful language. On top of that, it has object-oriented features, data-oriented features, and some functional programming features. As well, it has the rapid development facility of any scripted language, and yet it is fast.

On to texts. I read a great deal and already have several hundred books, so I now intentionally limit my book-spending budget. I found that this wasn't a hinderance here, though. There are some excellent

Categories: programming, python

Easy Charts and Graphs -- Use Google's Visualization API

08:25 Thu, 04 Feb 2010

Have you sometimes wanted to make a quick graph or a pie chart to display on your website? Decided it was too hard for the amount of effort and given up? There is a very simple solution that is remarkably easy. You can use Google's Visualization API to create the graphs for you with just a few lines of code.

Here is a screen shot of a very simple pie chart. Note the extra features such as a slice that pops out to identify it, a pop up with more information, and sorted columns in the table. These features come with it, you don't need to do anything.

google graph

The image shows a pie chart and a table. You can show either or both plus several other types of graphs. I think it looks professional and neat.

The graphs are generated using javascript and ajax, and the browser will go and load the Google javascript (which I guess could cause a small delay, though on my site it is less than a second). Here is the actual page from which the screen shot was taken. You will notice it is quite

Categories: software, python, internet

Kukkaisvoima Blogging Software

10:44 Sun, 20 Dec 2009

I wanted a simple light-weight personal blogging tool that lets me write in flat files. Like many others, I very much dislike editing text in a browser, especially anything more than a few lines. Browsers seem so overloaded with junk and javascript nowadays that their response time has crept up to several tenths of a second, very frustrating for a touch-typist who needs response times of around a tenth to catch errors 1. So, this tool needed to work with flat files that I could edit in vim and easily transfer up to the blog host.

As well, it needed to be light-weight. I can't see my blog ever running to more than a few hundred entries per year max. Tools like Wordpress et al are too heavy for me, in the sense that their processing slows things down by comparison.

Python would be good, I prefer it to PHP. I really like it, it is a great language.

Also, I wanted some simple things like categories and comments, and search would be nice too.

Originally, I had tried pyblosxom, but I found the lack of documentation

Categories: python, software, blogging