簡體   English   中英

為什么我的Circle Loop無法在python中工作

[英]why won't my circle loop work in python

import turtle
import time
import random

n = int(input("how many circles do you want? "))
radius = int(input("Radius?"))

turtle.forward(radius)
turtle.left(90)

for circle in range(num, 0, -1):90 (num..1)
    turtle.begin_fill()
    turtle.color(random.random(),random.random(), random.random())  
    turtle.circle(radius * circle / num)
    turtle.end_fill()

    turtle.left(90)
    turtle.forward(radius / num)
    turtle.right(90)
for circle in range(num, 0, -1):90 (num..1)

那是無效的Python語法。 假設它應該是評論,則為:

for circle in range(num, 0, -1):     # num..1

但是,如果你還記得這個,你會發現自己的藝術從業者更好:代碼告訴你如何做事,意見告訴你為什么他們這樣做。

任何查看Python代碼的人都應該已經意識到,循環從num遞減計數(順便說一句,它應該為n ,或者頂部的輸入應該分配給num )為1 ,否則他們就不必看代碼了。

對於范圍為(num,0,-1):90(num..1)的圓

在條件中,“:”是指示循環開始的必要條件,

對於范圍為(num,0,-1)的圓:#(num..1)

您的變量num也沒有定義,假設您將其與變量n放在一起了。

這會給你同心圓。 您可以根據用戶輸入進行循環。 將整個內容包裝到for循環中以簡化編碼,然后包裝到函數中。

import turtle as tu

# initial radius
radius = 100
# distance between circles
distance = 30

# pen up
tu.up()
# move pen to point x, y
# keeps the center of the circle at canvas center
tu.goto(0, -radius)
# pen down
tu.down()
tu.circle(radius)
# increase the radius value by distance
radius  += distance
# pen up
tu.up()
# move pen to point x, y
# keeps the center of the circle at canvas center
tu.goto(0, -radius)
# pen down
tu.down()
tu.circle(radius)
tu.done() #done

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM