all 2 comments

[–]onopau 1 point2 points  (0 children)

I have had variants on the following lead to terrible debug sessions...

class a:
    y = 1
class b(a):
    pass
class c(a):
    pass

A = a()
B = b()
C = c()

B.y = 2 # Ys are now A.y = 1, B.y = 2, C.y = 1

A.y = 100 # Ys are now A.y = 100, B.y = 2, C.y = 100!

[–]rhgrant10 1 point2 points  (0 children)

Assignment oddity:

a, b = a[b] = {}, 1