mrstephengross wrote: > Hi all. In C, an assignment statement returns the value assigned. For > instance: > > int x > int y = (x = 3) > > In the above example, (x=3) returns 3, which is assigned to y. > > In python, as far as I can tell, assignment statements don't return > anything: > > y = (x = 3) > > The above example generates a SyntaxError. > > Is this correct? I just want to make sure I've understood the > semantics.
Yes, but there is valid syntax for the common case you mentioned: y = x = 3 What you can't do (that I really miss) is have a tree of assign-and-test expressions: import re pat = re.compile('some pattern') if m = pat.match(some_string): do_something(m) else if m = pat.match(other_string): do_other_thing(m) else: do_default_thing() -- http://mail.python.org/mailman/listinfo/python-list