Python入门笔记5——小练习(turtle和for循环)画同心圆

进行了初步的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()

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值