Я новичок в программировании на Python. Примерно три недели go я закончил клон тетриса, используя модуль черепахи, чтобы проверить свои навыки. У меня создалось впечатление, что когда я отключил трассировщик анимации, мне пришлось вручную обновить окно с помощью метода update()
. Вчера, кодируя клон змеи с помощью модуля черепахи, мне пришлось объяснять другу, почему я вручную обновляю экран. Для доказательства я открыл тетрис и закомментировал методы update()
, чтобы показать, что игра не будет работать. К моему удивлению, это действительно сработало, и я не могу понять, как это было, поскольку даже мой змеиный код не работал бы без метода update()
.
Вот часть основного l oop кода тетриса:
while not game_over:
if not current_piece.does_piece_fit(starting_row + 2, starting_column, current_piece.current_piece):
game_over = True
wn.update()
movement()
marco.update_grid()
marco_next.show_next_piece(next_piece)
show_score()
current_piece.proyeccion()
marco_next.show_text(x_text_next_piece, y_text_next_piece, "Next Piece:", normal_style)
marco_next.show_text(x_text_hold, y_text_hold, "Hold:", normal_style)
show_instructions(x_text_instructions, y_text_instructions, instructions_text, smaller_style)
if holding:
marco_hold.show_hold_piece(hold_piece)
Если строка wn.update()
закомментирована, она не должна работать, но почему-то работает. Код немного длинноват, и я новичок на этом сайте, поэтому я не знаю, может ли его публикация полностью считаться плохой или грубой с моей стороны. Спасибо, что прочитали это, извините за плохой английский sh и запутанный код.