当前位置:首页 > 专题范文 > 调查报告 > 正文

Python实验报告(2022年)

发布时间: 2022-08-15 08:55:04 来源:网友投稿

下面是小编为大家整理的Python实验报告(2022年),供大家参考。

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()

 实验结果:

 ...

版权所有:博古范文网 2012-2024 未经授权禁止复制或建立镜像[博古范文网]所有资源完全免费共享

Powered by 博古范文网 © All Rights Reserved.。浙ICP备12018771号-1