进行了初步的python编程学习以后,进行一下练习,主要目的是利用turtle功能画同心圆
代码1:通过input输入圆的个数和起始直径,利用预设的字符串控制颜色
import turtle
circle_num = input("please input the number of circles:") #圆的个数
diameter_set = input("please input diameter:") #起始直径
color_list = ["red","blue","green","yellow","black","pink"] #利用列表控制颜色
color_num = len(color_list)
print("Print {0} circles".format(circle_num))
print("The diameter is set as {0} circles".format(diameter_set))
turtle.penup()
for loop in range(int(circle_num)):
diameter = int(diameter_set) + int(loop) * 20
n_temp = loop % color_num
turtle.color(color_list[n_temp])
turtle.goto(0,-1*diameter)
turtle.pendown()
turtle.circle(diameter)
turtle.penup()
turtle.exitonclick() #这一行的目的是画完以后绘图对话框不直接消失
在代码1中,可以基本实现功能,但是有一点小问题,只能控制有限的颜色数,在代码2中利用随机数控制多个颜色,顺便练习一下随机数和rbg颜色控制。
代码2:利用随机数控制多个颜色,并在左上角显示当前是第几个圆
import turtle
import random
# circle_num = input("please input the number of circles:")
# diameter_set = input("please input diameter:")
# color_list = ["red","blue","green","yellow","black","pink"]
# color_num = len(color_list)
# print("Print {0} circles".format(circle_num))
# print("The diameter is set as {0} circles".format(diameter_set))
circle_num = turtle.textinput("个数设置", "输入画圆的个数")
diameter_set = turtle.textinput("直径设置", "输入第一个圆的直径")
turtle.penup()
turtle.colormode(255)
for loop in range(int(circle_num)):
turtle.pendown()
turtle.color(255, 255, 255)
turtle.goto(-200, 198)
turtle.write("{0}{0}{0}{0}{0}{0}{0}".format(chr(219)), font=("Arial", 30, "bold"))
turtle.goto(-200, 200)
turtle.color(0, 0, 0)
turtle.write("在画第{0}个圆".format(loop+1), font=("Arial", 20, "bold"))
turtle.penup()
r_rbg = random.randint(0, 255)
b_rbg = random.randint(0, 255)
g_rbg = random.randint(0, 255)
diameter = int(diameter_set) + int(loop) * 20
# n_temp = loop % color_num
turtle.goto(0, -1 * diameter)
turtle.color(r_rbg, b_rbg, g_rbg)
turtle.pendown()
turtle.circle(diameter)
turtle.penup()
turtle.exitonclick()