实验二:Python语言程序实例分析与验证
一、实验类型:验证型+设计型
二、建议学时:4
三、实验目的:
1、继续熟悉IDLE、Python开发环境的基本操作、熟悉Python基本输入输出函数或语句的用法、熟悉Python标准库和扩展库的导入和使用方式;
2、掌握利用程序控制结构编程方法;
3、掌握Python内置random函数的用法
四、实验内容:
(1)验证型:教材第4章中的BMI范例程序选和PI的计算实例程序 验证表4.3 random常用函数(不用提交)。
(2)设计型:教材《python 语言程序设计基础(第2版)》4章中的习题选:
4.1,4.2,4.3、4.4,4.5、4.7。
五、实验教材:《Python 语言程序设计基础(第2版)》
-
《温度转换实例》实例代码:
1.1.
#e1.1TempConvert.py
TempStr=input("请输入带有符号的温度值:")
if TempStr[-1] in ['F','f']:
C=(eval(TempStr[0:-1])-32)/1.8
print("转换后的温度是{:.2f}C".format(C))
elif TempStr[-1] in ['C','c']:
F=1.8*eval(TempStr[0:-1])+32;
print("转换后的温度是{:.2f}F".format(F))
else:
print("输入格式错误")
输出结果:
1.2.
#e1.2TempConvert.py
TempStr=input("请输入带有符号的温度值:")
while TempStr[-1] not in['N','n']:
if TempStr[-1] in ['F','f']:
C=(eval(TempStr[0:-1])-32)/1.8
print("转换后的温度是{:.2f}C".format(C))
elif TempStr[-1] in ['C','c']:
F=1.8*eval(TempStr[0:-1])+32;
print("转换后的温度是{:.2f}F".format(F))
else:
print("输入格式错误")
TempStr=input("请输入带有符号的温度值:")
输出结果:
1.3.
#e1.3TempConvert.py
def tempConvert(ValueStr):
if TempStr[-1] in ['F','f']:
C=(eval(TempStr[0:-1])-32)/1.8
print("转换后的温度是{:.2f}C".format(C))
elif TempStr[-1] in ['C','c']:
F=1.8*eval(TempStr[0:-1])+32;
print("转换后的温度是{:.2f}F".format(F))
else:
print("输入格式错误")
TempStr=input("请输入带有符号的温度值:")
tempConvert(TempStr)
输出结果:
-
《Python蟒蛇绘制实例》实例代码
2.1.
#e2.1DrawPython.py
import turtle
turtle.setup(650,350,200,200)
turtle.penup()
turtle.fd(-250)
turtle.pendown()
turtle.pensize(25)
turtle.pencolor("purple")
turtle.seth(-40)
for i in range(4):
turtle.circle(40,80)
turtle.circle(-40,80)
turtle.circle(40,80/2)
turtle.fd(40)
turtle.circle(16,180)
turtle.fd(40*2/3)
2.2.
#e2.2DrawPython.py
from turtle import *
setup(650,350,200,200)
penup()
fd(-250)
pendown()
pensize(25)
pencolor("purple")
seth(-40)
for i in range(4):
circle(40,80)
circle(-40,80)
circle(40,80/2)
fd(40)
circle(16,180)
fd(40*2/3)
2.3.
#e2.3DrawPython.py
import turtle
def drawSnake(radius,angle,length):
turtle.seth(-40)
for i in range(length):
turtle.circle(radius,angle)
turtle.circle(-radius,angle)
turtle.circle(radius,angle/2)
turtle.fd(40)
turtle.circle(16,180)
turtle.fd(40*2/3)
turtle.setup(650,350,200,200)
turtle.penup()
turtle.fd(-250)
turtle.pendown()
turtle.pensize(25)
turtle.pencolor("purple")
drawSnake(40,80,4)
turtle.done()
-
第2章程序练习题:
2.1.
TempStr=eval(input("转摄氏温度请输1,转华氏温度请输2:"))
if TempStr==1:
F=eval(input("请输入华氏温度:"))
C=(F-32)/1.8
print("转换后的温度是{:.0f}C".format(C))
elif TempStr==2:
C=eval(input("请输入摄氏温度:"))
F=1.8*C+32;
print("转换后的温度是{:.0f}F".format(F))
else:
print("输入格式错误")
输出结果:
2.2.
TempStr=input("请输入带有符号($或¥)的金额:")
if TempStr[0] in ['¥']:
D=eval(TempStr[1:])*6
print("转换后的金额是${:.2f}".format(D))
elif TempStr[0] in ['$']:
R=eval(TempStr[1:])/6;
print("转换后的金额是¥{:.2f}F".format(R))
else:
print("输入格式错误")
输出结果:
2.3.
import turtle
turtle.setup(650,350,200,200)
turtle.penup()
turtle.fd(-250)
turtle.pendown()
turtle.pensize(25)
turtle.seth(-40)
colors=["red","orange","yellow","green"]
for i in range(4):
turtle.pencolor(colors[i])
turtle.circle(40,80)
turtle.circle(-40,80)
turtle.pencolor("cyan")
turtle.circle(40,80/2)
turtle.fd(40)
turtle.pencolor("blue")
turtle.circle(16,180)
turtle.fd(40*2/3)
2.5.
import turtle
angle=60
turtle.seth(angle)
turtle.fd(150)
for i in range(6):
if(i==3):
angle-=60
else:
angle-=120
turtle.seth(angle)
turtle.fd(150)
if i<2:
turtle.fd(150)
2.7.
import turtle
angle=0
turtle.seth(angle)
for i in range(4):
turtle.fd(150)
turtle.penup()
turtle.fd(50)
angle+=90
turtle.seth(angle)
turtle.fd(50)
turtle.pendown()
2.8.
import turtle
angle=90
turtle.seth(angle)
turtle.fd(60)
for i in range(7):
if(i==3):
angle-=60
else:
angle-=120
turtle.seth(angle)
turtle.fd(120)
if i!=2 and i!=3:
turtle.fd(60)