Итак, когда я звоню
plot_bounces( ball, numbounces, boxWH_tuple, circle=None )
, где ball - это объект, numbounces - это int, boxWH_tuple и circle - это кортежи, и в эту функцию помещается оператор print(type(circle))
, это кортеж. Однако когда я вызываю update_ball(ball, boxWH_tuple, circle=None)
оператор put a print(type(circle))
в этой функции, это не тип. Я не понимаю, почему и как сделать это кортежом для обеих функций. Это только часть моего кода, которая кажется проблематичной.
Это то, что я раньше называл plot_bounces
plot_bounces(Ball(-1,0,0.1), 1, (3,2), ( (0,0) ,0.4) )
Есть еще один скрипт с классом Ball, который имеет дело с объектом Ball.
Моя главная проблема в том, почему print(type(circle))
дает мне класс 'tuple' для первого отпечатка и класс 'NoneType' для второго отпечатка.
def plot_bounces(ball, numbounces, boxWH_tuple, circle=None):
print(type (circle))
#make space to store coordinates
xcoords = []
ycoords = []
#store the starting point
xcoords.append(ball.x)
ycoords.append(ball.y)
while numbounces>0 :
#calls on update_ball and change the old values with new ones
update_ball(ball, boxWH_tuple, circle=None)
#
ball=update_ball(ball, boxWH_tuple, circle=None)
xpoint = ball.x
ypoint = ball.y
ycoords.append(ypoint)
xcoords.append(xpoint)
numbounces+= -1
def update_ball(ball, boxWH_tuple, circle=None):
print (type(circle))
Разве это не должно быть кортежем для обоих случаев?