TURTLE - Изменить координаты в зависимости от длины списка, оператора if или цикла while?turtle.goto () - PullRequest
0 голосов
/ 09 февраля 2019

Это код для калькулятора, который я сделал с Turtle, список содержит различные цифры и операторы, которые будут использоваться.Оператор If проверяет длину списка, и для каждого элемента +1, добавленного в список, он перемещает координаты пера черепахи, который затем записывает числа, которые были введены пользователем, в калькуляторе «display».

Как я могу сделать этот код более эффективным?

def order_display():
    if len(list) == 1:
        turtle.goto(245, 110)
    elif len(list) == 2:
        turtle.goto(230, 110)
    elif len(list) == 3:
        turtle.goto(215, 110)
    elif len(list) == 4:
        turtle.goto(200, 110)
    elif len(list) == 5:
        turtle.goto(185, 110)
    elif len(list) == 6:
        turtle.goto(170, 110)
    elif len(list) == 7:
        turtle.goto(155, 110)
    elif len(list) == 8:
        turtle.goto(140, 110)
    elif len(list) == 9:
        turtle.goto(125, 110)
    elif len(list) == 10:
        turtle.goto(110, 110)
    elif len(list) == 11:
        turtle.goto(95, 110)
    elif len(list) == 12:
        turtle.goto(80, 110)
    elif len(list) == 13:
        turtle.goto(65, 110)
    elif len(list) == 14:
        turtle.goto(50, 110)
    elif len(list) == 15:
        turtle.goto(35, 110)
    elif len(list) == 16:
        turtle.goto(20, 110)
    elif len(list) == 17:
        turtle.goto(5, 110)
    elif len(list) == 18:
        turtle.goto(-10, 110)
    else:
        print("DOES NOTHING")

1 Ответ

0 голосов
/ 09 февраля 2019

Используйте цикл for:

if 1 <= len(list) <= 18:
    for i in range(1, 18):
        if len(list) == i:
            turtle.goto(-15 * i + 260, 110)
else: print("DOES NOTHING")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...