Python has several excellent templating systems. The problem is that there are so many templating systems (and HTTP frameworks, and object-relational mappers) to choose from, someone trying to figure out where to start with Python web development is likely to become frustrated and choose Rails instead.
has proven very effective for me. Genshi does an excellent job of reporting template errors (your concern with Cheetah). Version 0.4 even supports embedding clean python syntax (via
<?python ... ?>
blocks) although this is frowned upon.