龟纹渐变色(评论代码)

时间:2017-10-13 21:42:54

标签: python python-3.x anaconda jupyter-notebook turtle-graphics

我正在尝试使用Turtle打印30个螺旋形的六边形,并且从红色到黑色的渐变颜色变化。

我将for循环i相乘以更改(r,b,g)中的设定值,因此,在某些时候,它将超过r = 255。我添加了if语句,但不会超出此范围,但它会给我错误:

File "<ipython-input-4-35d45ac44fdd>", line 20
    if r > '255'
                ^
SyntaxError: invalid syntax

导致此错误的原因是什么?

仅供参考我使用的是Anaconda和Jupyter笔记本。

这是我的代码:

import turtle 

def draw_hexagon (t, size):
    n=6
    angle= 360/n
    for i in range(n):
        t.forward(size)
        t.left(angle)

turtle.colormode(255)
mega=turtle.Turtle()
mega.speed(1000) 
leng = 100
for i in range(30):
    r = 5+(i*10)
    g = 0
    b = 0
    color = (r, b, g)
    if r > 255
       print color(r,b,g)
   mega.fillcolor(color) 
   mega.begin_fill()
   draw_hexagon(mega, leng)
   mega.end_fill()
   leng = leng + 5
   mega.left(5)

turtle.exitonclick()

1 个答案:

答案 0 :(得分:0)

我的建议是不要使用from turtle import Turtle, Screen MIN_COLOR = 5 MAX_COLOR = 255 COUNT = 30 ANGLE = 5 STARTING_LENGTH = 100 LENGTH_INCREMENT = 5 N = 6 def draw_polygon(turtle, size): angle = 360 / N for _ in range(N): turtle.forward(size) turtle.left(angle) screen = Screen() screen.colormode(255) mega = Turtle() mega.speed('fastest') length = STARTING_LENGTH for r in range(COUNT): red = round(r * ((MAX_COLOR - MIN_COLOR) / (COUNT - 1))) + MIN_COLOR color = (red, 0, 0) mega.fillcolor(color) mega.begin_fill() draw_polygon(mega, length) mega.end_fill() length += LENGTH_INCREMENT mega.left(ANGLE) mega.hideturtle() screen.exitonclick() 语句来解决错误,而是先修复数学以避免错误。加上一些代码清理:

NgModule