Начну с того, что поделюсь кодом.
import random
class Ball:
def __init__(self, radius):
self.radius = radius
def radius():
return random.randint(1, 10)
ball = Ball(radius())
ball = Ball(radius())
class Bag:
def __init__(self, slots):
self.slots = slots
bag = Bag([1, 2])
bag.slots[0] = ball
bag.slots[1] = ball
print(bag.slots[0].radius)
print(bag.slots[1].radius)
Оба объекта шара выглядят совершенно одинаково. Разница заключается в радиусе, поскольку он случайным образом генерируется моей функцией def radius (). Я хочу иметь возможность поместить первый шар в первую прорезь объекта «сумка», а второй шар - во вторую прорезь. Пока об этом написано, это невозможно. Это связано с тем, что оба объекта шара имеют одну и ту же переменную "мяч". Я могу легко решить эту проблему, изменив названия шаров на такие, как ball_1 и ball_2. Однако , я хотел бы оставить имена переменных такими же. Есть ли способ, чтобы Python понимал, какой шар какой, не меняя имен, или мне просто придется иметь дело с ними с разными именами?