The Pylons web framework is aimed at making webapps and large programmatic website development in Python easy. Pylons combines the very best ideas from the worlds of Ruby, Python and Perl, providing a structured but extremely flexible Python web framework. BlastOff is a Pylons application template providing a working site skeleton configured with SQLAlchemy, mako, repoze.who, ToscaWidgets, TurboMail, and WebFlash.
You can use regular expressions in python by using the “re” module. Both patterns and strings to be searched can be Unicode strings as well as 8-bit strings. Most of the regex module functions don’t force you to compile a regex object first, which I rarely do. You can easily use regular expressions by placing them inside python’s raw string notation using apostrophes.
I like os’s subprocess.Popen() to run shell commands from within my Python code. I also like to define TRUE and FALSE to use as return values. Now I know what you’re thinking: there’s no such thing as ‘C’s #define in python because there’s no compiler to swap out of all your substitutions at compile time. However, it’s just as easy to achieve the same results.
Python’s keyring lib supports Windows win32crypto, Mac OS X’s SXKeychain, KDE’s KWallet, Gnome’s keyring, and encrypted or unencrypted password files. When your application wants to store or fetch data from the keyring, it will just work.
It’s all about the design of the language and I agree with the author completely when he says, “Most languages have so much friction and awkwardness built into their design.”
I like it. It’s so simple and flexible. Define it with none, then assign sys.argv in place of argv.
Run system commands or call a sub-process and assign the return value to a variable. This makes it easy to pass the error up to your processes parent.
Tail a file in Python
def tail( f, window=20 ):
f.seek( 0, 2 )
bytes= f.tell()
size= window
block= -1
while size > 0 and bytes+block*1024 > 0:
…
I like wxPython a lot more than the other gui tooltkits i’ve tried. I’m finding it really easy to keep it from getting cluttered, and it’s easy to pick up and run with, but there’s some demo’s like this one below, that i’ve seen in various forms all over the place now, that I think are a waste of time. Why would you have a app that has nothing but a menu bar? You wouldn’t, so doesn’t it make sense to get the confusing parts of gui code out of the way? Namely, layout and events.
This is useful if you need to look at the last arguments before deciding what to do, possibly for interoperability with some older code where the order of command line arguments is already set in stone.