0
私はこのプログラムを作成してフラグを作成しましたが、最近実行しようとしましたが、もともとコード化していたにもかかわらず何らかの理由で動作しませんでした。縞模様は上手く描けるが、青い正方形と星になるとカメのポインタはどこにも動かない。私はPython 2.7.11を使用していますが、これは1年前に書かれたので、それがうまくいかない理由です。私は使用していたPythonのバージョンを覚えていません。Python Turtleが正しく描画されない
import turtle
def draw_stripes(length, height, color):
turtle.speed('fast')
turtle.color(color)
turtle.begin_fill()
turtle.pendown()
turtle.forward(length)
turtle.left(90)
turtle.forward(height)
turtle.left(90)
turtle.forward(length)
turtle.left(90)
turtle.forward(height)
for i in range(0,6):
turtle.penup()
turtle.left(180)
turtle.forward(height*2)
turtle.pendown()
turtle.right(90)
turtle.forward(length)
turtle.left(90)
turtle.forward(height)
turtle.left(90)
turtle.forward(length)
turtle.left(90)
turtle.forward(height)
turtle.end_fill()
def draw_canton(length, height, color):
turtle.speed('fast')
turtle.left(180)
turtle.forward(height/13)
turtle.color(color)
turtle.begin_fill()
turtle.right(90)
turtle.pendown()
turtle.forward(length*(2/5))
turtle.right(90)
turtle.forward(height*(7/13))
turtle.right(90)
turtle.forward(length*(2/5))
turtle.right(90)
turtle.forward(height*(7/13))
turtle.end_fill()
def draw_star_row_six(length, height, size):
turtle.speed('fast')
turtle.right(90)
turtle.forward(length)
turtle.right(90)
turtle.forward(length)
turtle.right(180)
turtle.forward(size)
turtle.right(163)
for i in range (6):
draw_star(size, 'white')
turtle.left(73)
turtle.forward(length*2)
turtle.right(73)
turtle.left(253)
turtle.forward((length*2)*6)
turtle.left(90)
turtle.forward(height*2)
turtle.right(180)
turtle.right(163)
for i in range (6):
draw_star(size, 'white')
turtle.left(73)
turtle.forward(length*2)
turtle.right(73)
turtle.left(253)
turtle.forward((length*2)*6)
turtle.left(90)
turtle.forward(height*2)
turtle.right(180)
turtle.right(163)
for i in range (6):
draw_star(size, 'white')
turtle.left(73)
turtle.forward(length*2)
turtle.right(73)
turtle.left(253)
turtle.forward((length*2)*6)
turtle.left(90)
turtle.forward(height*2)
turtle.right(180)
turtle.right(163)
for i in range (6):
draw_star(size, 'white')
turtle.left(73)
turtle.forward(length*2)
turtle.right(73)
turtle.left(253)
turtle.forward((length*2)*6)
turtle.left(90)
turtle.forward(height*2)
turtle.right(180)
turtle.right(163)
for i in range (6):
draw_star(size, 'white')
turtle.left(73)
turtle.forward(length*2)
turtle.right(73)
turtle.left(253)
turtle.forward((length * 2)*6)
turtle.right(90)
turtle.forward(height*7)
def draw_star_row_five(length, height, size):
turtle.right(90)
turtle.forward(length)
turtle.right(73)
for i in range (5):
draw_star(size, 'white')
turtle.left(73)
turtle.forward(length*2)
turtle.right(73)
turtle.left(253)
turtle.forward((length*2)*5)
turtle.left(90)
turtle.forward(height*2)
turtle.right(180)
turtle.right(163)
for i in range (5):
draw_star(size, 'white')
turtle.left(73)
turtle.forward(length*2)
turtle.right(73)
turtle.left(253)
turtle.forward((length*2)*5)
turtle.left(90)
turtle.forward(height*2)
turtle.right(180)
turtle.right(163)
for i in range (5):
draw_star(size, 'white')
turtle.left(73)
turtle.forward(length*2)
turtle.right(73)
turtle.left(253)
turtle.forward((length*2)*5)
turtle.left(90)
turtle.forward(height*2)
turtle.right(180)
turtle.right(163)
for i in range (5):
draw_star(size, 'white')
turtle.left(73)
turtle.forward(length*2)
turtle.right(73)
turtle.home()
def draw_star(size, color):
turtle.color(color)
turtle.begin_fill()
turtle.pendown()
for i in range(5):
turtle.forward(size)
turtle.right(144)
turtle.end_fill()
turtle.penup()
def get_color():
return r,g,b
def draw_flag(height):
turtle.speed('fast')
turtle.setx(-150)
turtle.color('black')
turtle.pendown()
turtle.forward(height*1.9)
turtle.left(90)
turtle.forward(height)
turtle.left(90)
turtle.forward(height*1.9)
turtle.left(90)
turtle.forward(height)
turtle.penup()
turtle.left(90)
draw_stripes((height*1.9), height/13, 'red')
draw_canton((height*1.9), height, 'blue')
draw_star_row_six(((height*1.9)*(2/5))/12,(height*(7/13))/10, ((height/13)*(4/5))/2)
draw_star_row_five(((height*1.9)*(2/5))/12,(height*(7/13))/10, ((height/13)*(4/5))/2)
height = float(input('Enter The Height of Your Flag: '))
draw_flag(height)
...ファイルの先頭に '__future__ import division'を追加してください。 – Gerrat
@Gerrat:これはうまくいきますが、Python2で動作する理由がない限り、私はそれをしません。 – Functino
プログラムに1行追加するのを避けるために、全く新しいPythonバージョンをインストールしません。 Python2.7を使っていると彼は言いました。 – Gerrat