Really stupid question regarding PEP 252 and type/class unification
Neil Schemenauer
nas at python.ca
Thu Aug 23 14:01:38 EDT 2001
Jacob Kaplan-Moss wrote:
> I think I see what Russel is getting at here... the point is, myInt is
> an instance of class MyInt when it is first created, but what if I want
> to change the value of myInt without modifying the class?
You can't. ints are immutable.
> >>> class MyInt(int):
> ... pass
> >>> x = MyInt()
> >>> isinstance(x, MyInt)
> 1
>
> So here x is still a MyInt object. Now I want to change the x so that x
> holds the value 5 but is still a myInt object. So I try:
>
> >>> x = 5
You are quite confused about how Python works. The above statement
binds the name "x" to the object "5".
> So, the question is, can I treat a MyInt the same way as I can treat an
> int? Or do I have to do something like "x.set(5)" or "x = MyInt(5)"?
Eventually you should be able to treat it just like an int.
Neil
More information about the Python-list
mailing list