On 02/03/2016 09:32, Salvatore DI DIO wrote: > Hello, > > I know Python does not have variables, but names. > Multiple names cant then be bound to the same objects. > > So this behavior
Python has variables. They are just not the kind of variables you find in C and variations but more like variables in lisp, scheme and smalltalk. >>>> b = 234 >>>> v = 234 >>>> b is v > True > > according to the above that is ok No that is just a coincidence. A consequent of the particular implimentation, that has prepared a number of number objects beforehand. There is no guarantee in the language that the third statement above will produce True. > But where is the consistency ? if I try : > >>>> v = 890 >>>> w = 890 >>>> v is w > False > > It is a little difficult to explain this behavior to a newcommer in Python. This behaviour is undefined in the language. So there is nothing to explain except that it depends on implementation details. Any program that depends on two variable being the same or not the after similar code is wrong. -- Antoon Pardon -- https://mail.python.org/mailman/listinfo/python-list