Joon wrote: > > >>> # Fibonacci series: > ... # the sum of two elements defines the next > ... a, b = 0, 1 > >>> while b < 10: > ... print b > ... a, b = b, a+b > ... > 1 > 1 > 2 > 3 > 5 > 8 > > >>> a, b = 0, 1 > >>> while b < 10: > print b > a = b > b = a+b > > 1 > 2 > 4 > 8 > > Why a, b = b, a+b isn't a = b; b = a+b ?
It's actually equivalent to: temp = (b, a+b) a = temp[0] b = temp[1] The temporary tuple object is created first, with the old values of a and b. Then a and b are reassigned. The value of a doesn't change until *after* a+b is calculated. -- Robert Kern [EMAIL PROTECTED] "In the fields of hell where the grass grows high Are the graves of dreams allowed to die." -- Richard Harter -- http://mail.python.org/mailman/listinfo/python-list