One of the more surprising results (esp. for non-pythonists) is the fact that string formatting:
s = "%s" % some_integer
is faster than "casting" to string: s = str(some_intenger)
That's solely because looking up the 'str' symbol requires finding an element in global symbols' hashtable. This turns out to be more expensive than parsing the format string and building the result of % operator.