×
  • 1. Знакомство с модулем Turtle
  • 2. Рисуем правильные многоугольники turtrle
  • 3. Как нарисовать звезду turtle
  • 4. Как нарисовать звездное небо turtle
  • 5. Расставляем звезды на небе turtle
  • 6. Обработка событий нажатия на клавиатуру turtle
  • 7. Рисуем олимпийские кольца Turtle
  • 8. Как задать случайный цвет в turtle
  • 9. Прыгающий мячик Bounce ball
  • 10. Много прыгающих мячиков
  • 11. Мяч и сила притяжения
  • 12. Много мячиков и сила притяжения
  • 13. Ускоряем анимацию при помощи функции tracer
  • 14. Создаем игру Пинг-Понг на Python. Часть 1
  • 15. Создаем игру Пинг-Понг на Python. Часть 2
  • 16. Создаем игру Пинг-Понг на Python. Часть 3
  • 17. Создаем игру Пинг-Понг на Python. Часть 4
  • 18. Создаем игру Пинг-Понг на Python. Часть 5
  • Как задать случайный цвет в turtle

    Случайный цвет мы может получать из заранее созданного списка, в котором хранятся названия цветов. При помощи функции choice из модуля random мы можем получить один элемент этого списка случайный образом.

    Ниже представлен код, который каждую секунду меняет цвет экрана, а выбор цвета осуществляется случайным образом из списка colors

    import turtle, random, time
    
    colors = ['red', 'green', 'yellow', 'purple', 'orange']
    
    window = turtle.Screen()
    
    while True:
        window.bgcolor(random.choice(colors))
        time.sleep(1)
    
    window.mainloop()
    

    Но при такой реализации наш выбор цветов ограничен количеством элементов списка colors.

    Другой способ задать случайный цвет, это передавать 3 величины в пределах от 0 до 1 в функцию bgcolor. Первая величина обозначает красный цвет, вторая - зеленый и третья - синий. Таким образом мы пользуемся моделью RGB(red green blue). Ниже программа, которая случайным образом задает цвет фона экрана.

    import turtle, random, time
                
    window = turtle.Screen()
    
    while True:
        red = random.random()
        green = random.random()
        blue = random.random()
        window.bgcolor(red, green, blue)
        time.sleep(1)
    
    window.mainloop()

    Задать вопрос