On Sun, Jan 11, 2009 at 2:06 PM, killsto <kilian...@gmail.com> wrote: > I have a class called ball. The members are things like position, > size, active. So each ball is an object.
Class names should use CamelCase, so it should be `Ball`, not `ball`. > How do I make the object without specifically saying ball1 = ball()? > Because I don't know how many balls I want; each time it is different. > > The balls are to be thrown in from the outside of the screen. I think > you get that is enough information. > > This doesn't directly pertain to balls, I have wanted to do something > like this for many different things but didn't know how. > > I would think something like: > > def newball(): > x = last_named_ball + 1 > ball_x = ball(size, etc) # this initializes a new ball > return ball_x > > But then that would just name a ball ball_x, not ball_1 or ball_2. > > Is it possible? Yes, but only using deep dark black magic. Just use a list of Ball objects instead. Example: the_balls = [Ball(size, etc) for i in range(number_of_balls)] -- Follow the path of the Iguana... http://rebertia.com -- http://mail.python.org/mailman/listinfo/python-list