社区微信群开通啦,扫一扫抢先加入社区官方微信群
社区微信群
实验一:Python程序设计之初窥门径
一、实验目的:
了解Python的基本编程环境,熟悉其主要组成部分和使用。
熟悉turtle库语法元素,了解其绘图坐标体系、画笔控制函数和运动命令函数。通过程序实例,初步掌握Python程序设计的基本概念、编程规则和开发过程。
掌握Python的基本数据类型的概念和使用; 运用Python的标准数学库进行数值计算;掌握字符串类型的格式化操作方法和应用。
二、知识要点:
1、一张图尽览Python:
2.Turtle库语法元素
3.基本数据类型
三、实验内容及步骤:
1.启动 Anaconda,新建文件,请根据课本中基本语法部分内容,逐行输入其中,并运行,熟悉python基本语法。
方法一:使用工具栏中的新建文件按钮
方法二:使用菜单栏中的File(文件)——》New file(新建文件)或者是直接使用Ctrl+N来新建
(1)利用turtle库绘制一个正方形螺旋线,效果如下图所示。
#squareLineV1.py
import turtle
turtle.speed(“fastest”)
turtle.pensize(2) #画笔像素
for i in range(100): #绘画100次
turtle.fd(2*i)
turtle.left(90) #绘画矩形的一条边
turtle.done()#结束绘制
实验结果:
(2)修改上面程序,绘制斜螺旋线,效果如下图所示。
#squareLineV2.py
import turtle
turtle.speed(“fastest”)
turtle.pensize(2) #画笔像素
for i in range(100): #绘画100次
turtle.fd(2*i)
turtle.left(91) #绘画矩形的一条边
turtle.done()#结束绘制
实验结果:
(3) 修改上面程序,绘制彩色斜螺旋线,效果如下图所示。
#squareLineV3.py
import turtle
turtle.speed(“fastest”)
turtle.pensize(2) #画笔像素
color = [“red”,
“yellow”, “purple”, “blue”]#颜色
for i in range(100): #绘画100次
turtle.pencolor(color[i%4]) #更换画笔颜色
turtle.fd(2*i)
turtle.left(91) #绘画矩形的一条边
turtle.done()#结束绘制
实验结果:
3.彩色蟒蛇绘制。对 Python 蟒蛇的每个部分采用不同颜色,绘制一条彩色蟒蛇。(自由发挥)
实验代码:
#pythonDrawV1.py
import turtle
turtle.setup(650, 350, 200, 200)
turtle.penup()#画笔抬起
turtle.fd(-250) #画笔定位
color = [“purple”,
“red”, “yellow”, “pink” , “blue”,
“green”] #蟒蛇颜色
turtle.pendown()#画笔落下
turtle.pensize(25) #画笔像素
turtle.seth(-40)#设定起始角度
for i in range(4): #蟒蛇的四个弯
turtle.pencolor(color[i]) #画笔换颜色
turtle.circle(40,80)
turtle.circle(-40,80)
turtle.pencolor(color[4]) #画笔换颜色
turtle.circle(40, 80/2)
turtle.fd(40)
turtle.pencolor(color[5])
turtle.circle(16, 180) #蟒蛇的回头
turtle.fd(40*2/3)
turtle.done() #绘画结束
实验结果:
4.绘制奥运五环图,其中五种颜色分别为蓝色、黑色、红色、黄色和绿色。注意根据实际效果调整圆形的大小和位置。效果如图所示。请补全绿色环的代码,将程序上传提交。
实验代码:
#fiveCircleV1.py
import turtle
turtle.pensize(10) #定义画笔宽度
turtle.pencolor(“blue”)#设置画笔颜色
turtle.penup()
turtle.goto(-110, -25) #中心坐标为(0,0)
turtle.pendown()
turtle.circle(45)#以45个像素点为半径,逆时针画圆
turtle.pencolor(“black”)
turtle.penup()
turtle.goto(0, -25) #中心坐标为(0,0)
turtle.pendown()
turtle.circle(45)
turtle.pencolor(“red”)
turtle.penup()
turtle.goto(110, -25) #中心坐标为(0,0)
turtle.pendown()
turtle.circle(45)
turtle.pencolor(“yellow”)
turtle.penup()
turtle.goto(-55, -75) #中心坐标为(0,0)
turtle.pendown()
turtle.circle(45)
turtle.pencolor(“green”)
turtle.penup()
turtle.goto(55, -75) #中心坐标为(0,0)
turtle.pendown()
turtle.circle(45)
turtle.done() #绘画结束
实验结果:
5.制作一个模拟windows启动界面的文本进度条,执行效果如下图所示。
代码如下:
#progressBarV1.py
import time
scale = 50 #宽度
print()
for i in range(1, 12): #打印田字
if i in (1, 6, 11):
print("{0:^50}".format('-'*20))
#输出田字的三横
else:
print("{0:>15}{1:^20}{2:<15}".format('|', '|',
'|'))
#分别右对齐,居中对齐,左对齐,对应田字的三条竖
print("正在启动window...".center(scale,
'-'))
print()
#打印进度条
for i in range(scale+1):
a = '|'*i #已经完成的
b = '.'*(scale-i) #未完成的
c = (i/scale)*100 #完成的百分数
print("r[{}{}]{:^3.0f}%".format(a, b, c), end = '')
#光标退回实现刷新,格式化输出,不换行
time.sleep(0.3) #线程休眠0.3s
print()
print("n"+"启动完成".center(scale,
'-')) #输出打印完成
实验结果:
四、实验总结及思考
1.turtle库的基本使用,包括画笔的角度和位置,画笔具有两种:画笔的抬起和落下,抬起状态不绘制图像,落下才能绘制图像,要注意画笔角度改变可能不会移动,只是方向变了,但也有同时改变的,例如circle()函数就可以做到角度和画笔位置同时改变。除此之外,画笔也可以调整画笔的粗细,绘画速度和画笔的颜色。
2.r实现光标回退,print()函数中设定end=””可以使输出到同一行
3.for…in range()的计数循环,字符串的format()方法。
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!