下面是小编为大家整理的Python实验报告(2022年),供大家参考。
-
学
生
实
验
报
告
册
(理工类)
课程名称:
Python 编程技术
专业班级:
18 大数据
学生学号:
1813041019
学生姓名:
张宇航
所属院部:
计算机工程
指导教师:
王 凯
20 19 —— 200 20 学年
第
2 学期
金陵科技学院教务处制 实验报告书写要求 实验报告原则上要求学生手写,要求书写工整。若因课程特点需打印的,要遵照以下字体、字号、间距等的具体要求。纸张一律采用A4 的纸张。
实验报告书写说明 实验报告中一至四项内容为必填项,包括实验目的和要求;实验仪器和设备;实验内容与过程;实验结果与分析。各院部可根据学科特点和实验具体要求增加项目。
填写注意事项 (1)细致观察,及时、准确、如实记录。
(2)准确说明,层次清晰。
(3)尽量采用专用术语来说明事物。
(4)外文、符号、公式要准确,应使用统一规定的名词和符号。
(5)应独立完成实验报告的书写,严禁抄袭、复印,一经发现,以零分论处 。
实验报告批改说明 实验报告的批改要及时、认真、仔细,一律用红色笔批改。实验报告的批改成绩采用百分制,具体评分标准由各院部自行制定。
实验报告装订要求 实验批改完毕后,任课老师将每门课程的每个实验项目的实验报告以自然班为单位、按学号升序排列,装订成册,并附上一份该门课程的实验大纲。
实验项目名称:
变量与数据类型
实验学时:
6
同组学生姓名:
实验地点:科技楼 2-607-1
实验日期:
实验成绩:
批改教师:
王 凯
批改时间:
实验一
变量与数据类型
一、实验目的和要求 1)熟悉 Anaconda + Spyder 集成开发环境,进行编辑、保存、编译及运行,并能进行简单程序调试; 2)掌握 Python 语言中各种变量及运算符的使用; 3)掌握 Python 语言中简单数据类型的区别与应用; 4)掌握 Python 语言中列表、元组、字典等复杂数据类型的用法; 5)掌握 Python 语言中循环结构、分支结构的用法。
二、实验仪器和设备 微型计算机,装有 Windows 操作系统和 Anaconda 环境平台。
三、实验内容与过程 实验中如无特别说明,均要求使用脚本(.py)方式编写代码。
1 、编程题 1.1 编写程序,根据输入的三科成绩值,计算并打印平均值和总分。
说明:按格式化输出; 例如:输入为 math = 130, eng = 101, chi = 126;输出为 print(“average score is {}, sum score is {}”.format(...)) 1.2 编写程序,根据给出的三角形的三条边,输出三角形的面积。
说明:按格式化输出; 提示:三角形面积计算采用海伦公式。
1.3 编写程序,计算 球体体积。
说明:按格式化输出; 提示:球体体积公式为:V = 4/3×π×r^3 = π×d^3/6
1.4 编写程序,根据身高和体重计算 BMI 值,同时输出国际和国内 BMI 指标建议值所确定的指标分类信息。
说明:要求给出身高和体重值,并计算 BMI 值,根据其指标分类找到合适的
类别,最后打印出分类信息。
1.5 编写程序,计算 1!+2!+…+10!的结果。
1.6 编写程序,打印出九九乘法口诀表。
说明:要求按行按列输出。
1.7 字典合并。输入两个字典,输出合并后的字典并按字典序排序,字典的键用一个字母或数字表示。
说明:例如,给出输入{“a”:10, “b”:9}, {“c”:3, “a”:2},输出为{“a”:12, “b”:9, “c”:3}。
1.8 编写程序:1)打印出 5000 以内能同时被 3、5、7 整除的数的个数;2)打印出 5000 以内能被 3、5、7 任意一个数整除的数的个数(注意相同的数字不要重复统计)
1.9 编写程序,要求从键盘输入一个整数,将各位数字反转后输出。
说明:例如,输入 123456,输出 654321。
1.10 编写程序,计算 1 2 -2 2 +3 2 -4 2 +…+97 2 -98 2 +99 2 。
1.11 编写程序,从键盘输入两个正整数 m 和 n,求其最大公约数和最小公倍数。
提示:在循环中,只要除数不等于 0,用较大数除以较小的数,将小的一个数作为下一轮循环的大数,取得的余数作为下一轮循环的较小的数,如此循环直到较小的数的值为 0,返回较小的数即为最大公约数。最小公倍数为两数之积除以最大公约数。
2 、思考题 2.1 编写程序,要求能够计算两个给定日期之间的天数(如今天距离建国多少天)。
说明:使用 Python 中的 datetime.date(year,month,day)方法。这一函数可以返回一个 date 对象,其中表示年、月、日的三个参数不可以省略(from datetime import date)。三个参数的取值范围如下:
MINYEAR <= year <= MAXYEAR 1 <= month <= 12 1 <= day <=给定月份的最大日期数 这里要说明的是 MINYEAR 是 1,MAXYEAR 是 9999。
2.2 编写程序,实现将十进制整数转换为二进制、八进制、十六进制。
说明:要求两种方式,一种为格式化字符串的形式,另一种采用 Python 内置函数实现,bin(dec)、oct(dec)、hex(dec)。
2.3 编写程序,实现猜数游戏。在程序中预设一个 0~99 之间的整数,让用户通过键盘输入所猜的数字,如果大于预设的数字,显示“太大了,请继续猜!”;如果小于预设的数字,显示“太小了,请继续猜!”;如此循环,直至猜中该数字,显示“预测 N 次,猜中了!”,其中 N 是用户输入字数的次数。
说明:例如,假定预设数字为 51,用户输入 67,打印出信息“太大了,请继续猜!”; 提示:获取用户键盘输入请查询 eval()函数和 input()函数的用法。
2.4 编写程序,实现打印出所有的“水仙花数”。
说明:“水仙花数”是指一个三位数,其各位数字立方和等于该数字本身,例如 153 就是一个水仙花数。
提示:查询 math.floor()函数的用法。
2.5 编写程序,实现图的字典嵌套表示,每个顶点用一个字典表示。如下图中 0点表示为:{"O":{"A":2,"B":5,"C":4}},其中表示一个顶点和该顶点相连的边及长度,要求输出整个图的顶点数 num_vertices、边的个数 num_edges 以及边的总长度len_edges。
2.6 编写程序,实现如下图所示的数字金字塔。
四、实验结果与分析(程序运行结果及其分析)
1 、编程题 1.1
1.2
1.3
1.4
1.5
1.6
1.7
1.8
1.9
1.10
1.11
2 、思考题 2.1
2.2
2.3
2.4
2.5
2.6
五、实验体会(遇到问题及解决办法,编程后的心得体会)
本次实验,对从网课中学习的 python 基本入门算法进行了巩固和应用,加深了对 py 基本语言的编写,如:数据类型的定义,各种运算符,条件语句 if,elif,循环语句 for,while。经过此次实验,对 py 产生了浓厚的编译兴趣,我会积极主动的编译 python,也对下面的实验产生强烈好奇心。
实验项目名称:
函数
实验学时:
4
同组学生姓名:
实验地点:科技楼 2-607-1
实验日期:
实验成绩:
批改教师:
王 凯
批改时间:
实验二
函数
一、实验目的和要求 1)掌握 Python 语言中函数的定义与调用; 2)掌握 Python 语言中函数参数传递与返回值; 3)熟悉模块的导入。
二、实验仪器和设备 微型计算机,装有 Windows 操作系统和 Anaconda 环境平台。
三、实验内容与过程 实验中如无特别说明,均要求使用脚本(.py)方式编写代码。
1 、编程题 1.1 定义一个 is_leap(year)函数,该函数可判断 year 是否为闰年。若是闰年,则返回 True;否则返回 False。
1.2 定义一个函数 cubic(n),该函数返回 1~n 的立方和。
1.3 定义一个函数,该函数返回 n 项的阶乘和,即为 1!+2!+…+n!。
1.4 定义一个函数 prime(p),该函数返回素数,当用户传入参数 p 为素数时返回True,否则返回 False。
1.5 定义一个函数 show_prime(),将题目 1.4 中的函数封装成模块,在本题中导入该模块,并显示从 1 到 100 中的所有素数。
1.6 定义一个函数,该函数接受一个列表 list 作为参数,用于去除 list 中重复的元素。
1.7 编写一个函数 change(str1),其功能是对参数 str1 进行大小写转换,将大写字母转换为小写字母;小写字母转换为大写字母;非英文字符不转换。
注意:该功能类似于 str 对象中的 swapcase()方法
2 、思考题 2.1 定义一个函数,要求输出 n 行 n 列的矩阵,以及其转置形式。
例如,当参数为 3 时,先输出 ① ,再输出 ②
①
②
2.2 实现一个函数 funcos,用下列公式 cos(x)近似值,精确到最后一项的绝对值小于 eps(绝对值小于 eps 的项不要加,例如最后一项如果小于 eps=0.0001,则不将其加进来):cos (x) = x^0 / 0! - x^2 / 2! + x^4 / 4! - x^6 / 6! + ? 函数接口定义:funcos(eps,x),其中用户输入的参数为 eps 和 x;函数 funcos应返回用给定公式计算出来,保留小数 4 位。
2.3 机器龟绘图:Python 带有一个能够模拟机器龟的龟图(turtle graphic)系统。该系统在屏幕上显示一个小的光标(表示机器龟)。可以使用 Python 语句来控制光标在屏幕上移动、绘制线段或图形。
要求:学习并使用 turtle 库绘制一个带正确颜色的奥运五环图形,五环线条宽度设置为 5。
参考文档:
四、实验结果与分析(程序运行结果及其分析)
(附上程序清单,代码请使用 12 号 Courier New 字体加粗,并正确高亮)
1. 实验代码:
def is_leap(xxx):
year = int(xxx)
if (year % 4 == 0) and (year % 100 != 0):
return True
elif year % 400 == 0:
return True
else:
return False while(True):
year=input(" 输入一个年份:")
if year=="back":
import sys
sys.exit(0)
print("%s 是闰年吗? %s" % (year, is_leap(year)))
实验结果:
2. 实验代码:
def cubic(n):
n=int(n)
sum=0;
for i in range (1,n+1):
sum+=i*i
return sum while(True):
n=input(" 请输入整数 n:")
if n=="back":
import sys
sys.exit(0)
print("1~%s 的平方和为:%s"%(n,cubic(n)))
实验结果:
3. 实验代码:
def fact(n):
n=int(n)
sum=0;
m=1
for i in range (1,n+1):
for j in range (1,i+1):
m=m*j
sum+=m
m=1
return sum while(True):
n=input(" 请输入整数 n:")
if n=="back":
import sys
sys.exit(0)
print("1~%s 的阶乘和为:%s"%(n,fact(n)))
实验结果:
4. 实验代码:
def prime(p):
p=int(p)
for i in range(2,p):
if(p%i==0):
return False
return True
while(True):
p = input(" 输入一个数:")
if(p=="back"):
import sys
sys.exit(0)
print("%s 是素数吗?%s"%(p,prime(p)))
实验结果:
5. 实验代码:
from example import prime def show_prime(n):
n=int(n)
for i in range(1,n+1):
if(prime.prime(i)==True):
print(i,end=" ") n=input(" 请输入一个数显示 n 以显示 n 以内的素数:") show_prime(n)
实验结果:
6. 实验代码:
import ast def lsd(ls,ls2):
ls=list(ls)
for i in range (0,len(ls)):
if ls[i] not in ls2:
ls2.append(ls[i])
return ls2
ls=ast.literal_eval(input(" 请输入列表:")) ls2 = [] lsd(ls,ls2) print(ls2)
实验结果:
7. 实验代码:
def change(str1): # 方法 2 :
print(str1.swapcase()) 直接得出结果
str2=""
for i in range (0,len(str1)):
if ord(str1[i])>=65 and ord(str1[i])<=90:
str2+=str1[i].lower()
elif ord(str1[i])>=97 and ord(str1[i])<=122:
str2+=str1[i].upper()
else :
str2+=str1[i]
print(str2) s1=str(input(" 数组:")) str1(s1)
实验结果:
二 1. 实验代码:
def matr(n):
print(" 矩阵:")
for i in range(1, n + 1):
for j in range(1, n + 1):
print((i - 1) * n + j, end=" ")
print()
print(" 转置:")
for i in range(1, n + 1):
for j in range(1, n + 1):
print(i + (j - 1) * 3, end=" ")
print() n=int(input(" 矩阵的长度 n:")) matr(n)
实验结果:
2 实验代码:
import math def funcos(eps,x):
x=int(x)
c1=float(1);
c2=float(0);
y=1
z=2
while(math.fabs(c1)>eps):
c2+=c1
c1 = (-1) * c1 * x * x / y / z
y += 2
z += 2
c2+=c1
print(c2) eps=float(input(" 输入 esp:")) x=float(input(" 输入 x:")) funcos(eps,x)
实验结果:
3. 实验代码:
import turtle p = turtle p.pensize(5)
# 画笔尺寸设置 5 def drawCircle(x, y, c="red"):
p.pu()
# 抬起画笔
p.goto(x, y)
# 绘制圆的起始位置
p.pd()
# 放下画笔
p.color(c)
# 绘制 c 色圆环
p.circle(50, 360)
# 绘制圆:半径,角 度
drawCircle(0, 0, "blue") drawCircle(80, 0, "black") drawCircle(160, 0, "red") drawCircle(120, -70, "green") drawCircle(40, -70, "yellow") p.done()
实验结果:
...
推荐访问:python总结心得体会 Python实验报告 实验 报告 Python