It's generally accepted that a semicolon (in most languages) means two lines no matter how the spacing goes. In Python, it's particularly tricky to have a complex program evaluate to one statement because of limitations like no assignments in expressions. It's true, though, that this is basically the same as writing Lisp in Python.