python实验报告一

这篇具有很好参考价值的文章主要介绍了python实验报告一。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

实验报告一 Python序列结构

一、实验学时:2学时

二、实验目的

  1. 掌握:Python常用内置对象-列表、元组、字典、集合。
  2. 掌握运算符和内置函数对列表、元组、字典、集合的操作。
  3. 理解列表推导式、生成器表达式的工作原理。
  4. 掌握切片操作。
  5. 掌握序列解包的用法。

三、实验目的

  1. 编写程序,用一个变量存储以下信息:学号,姓名,所在学院,专业名称。

  2. 编写程序,用一个变量存储你所在小组的组员名单。

  3. 对组员名单进行操作,如增加一个同学,减少一个同学,修改一个同学的姓名。

  4. 编写程序,录入小组成员的姓氏,利用集合输出小组中的所有姓氏。

  5. 编写程序,用一个变量存储组员名单,组员Python成绩,计算组员总人数,总分,平均分。

  6. 编写程序,用一个变量存储组员成绩,要求有低于60的成绩,利用列表推导式,筛选出低于60分的成绩。

  7. 编写程序,利用列表推导式将列表中的整数提取出来[123, 'hello', (1,2), 456, {23}, {'a':789}]

  8. 利用生成器表达式生成0~9的数值,要求每一个数值乘以你的幸运数字,最后将生成器对象转换成列表,输出列表的结果。

  9. 给定一个列表member0 = ["今天","天气","真好"],要求通过insert()方法和切片两种方案,把列表member0变成member1 = ["今天","的","天气","是","真好","呀"]

  10. 现有一购物车列表如下:

    carts=[{"name":"床", "price":1999, "num":1}, {"name":"枕头", "price":10,"num":2}, {"name":"被子", "price":20, "num":1}]
    

    要求通过用户输入总资产,例如:3000,然后显示购物车列表,计算购物车商品总金额,如果商品总额大于总资产,提示账户余额不足,否则,购买成功。

四、实验结果

(在此部分列出保持缩进格式的程序代码及运行结果截图,请注意保持格式统一,截图清晰,大小合适)

  1. 编写程序,用一个变量存储以下信息:学号,姓名,所在学院,专业名称。

    代码块:
    #程序名:test1.1
    #功 能:编写程序,用一个变量存储以下信息:学号,姓名,所在学院,专业名称。
    #作 者:xx
    #日 期:2023.3.2
    #思 路:利用列表存储输出即可
    
    # 列表存储信息
    alist = [{'2022250xxxx','李华','软件学院','软件工程专业'}]
    
    print(alist)
    
    
    运行结果截图:

    python实验报告一

  2. 编写程序,用一个变量存储你所在小组的组员名单。

    代码块:
    #程序名:test1.2
    #功 能:编写程序,用一个变量存储你所在小组的组员名单。
    #作 者:xx
    #日 期:2023.3.2
    #思 路:利用列表存储,输出即可
    
    group = ["张三","李四","王五","赵六"]
    
    print(group)
    
    
    运行结果截图:

    python实验报告一

  3. 对组员名单进行操作,如增加一个同学,减少一个同学,修改一个同学的姓名。

    代码块:
    #程序名:test1.3
    #功 能:对组员名单进行操作,如增加一个同学,减少一个同学,修改一个同学的姓名。
    #作 者:xx
    #日 期:2023.3.2
    #思 路:利用列表的del,append函数操作即可
    
    group = ["张三","李四","王五","赵六"]
    # 增加同学 
    group.append("李华")
    
    #删除姓名
    del group[2]
    
    #更改姓名
    group[0] = "Alice"
    
    # 输出小组
    print(group)
    
    运行结果截图:

    python实验报告一

  4. 编写程序,录入小组成员的姓氏,利用集合输出小组中的所有姓氏。

    代码块:
    #程序名:test1.4
    #功 能:编写程序,录入小组成员的姓氏,利用集合输出小组中的所有姓氏。
    #作 者:xx
    #日 期:2023.3.2
    #思 路:利用split()函数用分隔符对字符串进行切片,然后遍历输出即可
    
    name = input("请输入小组成员的姓氏:")
    
    # 利用split()函数分隔
    name_set = (name.split())
    print("小组成员姓氏有:")
    for i in name_set:
        print(i,end = ' ')
    
    
    运行结果截图:

    python实验报告一

  5. 编写程序,用一个变量存储组员名单,组员Python成绩,计算组员总人数,总分,平均分。

    代码块:
    #程序名:test1.5
    #功 能:编写程序用一个变量存储组员名单,组员Python成绩,计算组员总人数,总分,平均分。
    #作 者:xx
    #日 期:2023.3.2
    #思 路:利用字典和zip()函数计算字典中value()的和计算即可
    name = {"张三","李四","王五","赵六"}
    score = {80,90,85,95}
    
    s = dict(zip(name,score))
    
    print("组员总人数为:",len(s))
    
    # sum函数计算总分
    print("组员总分为:",sum(s.values()))
    
    # 计算平均分
    print("组内平均分为:%0.3f" % (sum(s.values())/len(s)))
    
    运行结果截图:

python实验报告一

  1. 编写程序,用一个变量存储组员成绩,要求有低于60的成绩,利用列表推导式,筛选出低于60分的成绩。

    代码块:
    #程序名:test1.6
    #功 能:编写程序,用一个变量存储组员成绩,要求有低于60的成绩,利用列表推导式,筛选出低于60分的成绩。
    #作 者:xx
    #日 期:2023.3.2
    #思 路:利用字典和zip()函数,计算字典中value(),遍历即可
    name = {"丽华","詹尼","Alice"}
    score = {70,50,40}
    
    # 利用zip()函数组合
    s = dict(zip(name,score))
    
    # 利用values()函数取值
    garde = list(s.values())
    score2 = [i for i in garde if i < 60]
    
    print("低于60分的成绩有:",score2)
    
    运行结果截图:

    python实验报告一

  2. 编写程序,利用列表推导式将列表中的整数提取出来[123, 'hello', (1,2), 456, {23}, {'a':789}]

    代码块:
    #程序名:test1.7
    #功 能:编写程序,利用列表推导式将列表中的整数提取出来`[123, 'hello', (1,2), 456, {23}, {'a':789}]`。
    #作 者:xx
    #日 期:2023.3.2
    #思 路:通过列表推导式判断类型是否为整数即可
    
    lista = [123, 'hello', (1,2), 456, {23}, {'a':789}]
    
    # 创建空表
    x = []
    
    # 提取整数
    x = [i for i in lista if type(i) == type(1)]
    
    print("提取后整数为:",x)
    
    
    运行结果截图:

    python实验报告一

  3. 利用生成器表达式生成0~9的数值,要求每一个数值乘以你的幸运数字,最后将生成器对象转换成列表,输出列表的结果。

    代码块:
    #程序名:test1.8
    #功 能:利用生成器表达式生成0~9的数值,要求每一个数值乘以你的幸运数字,最后将生成器对象转换成列表,输出列表的结果。
    #作 者:xx
    #日 期:2023.3.2
    #思 路:利用range()函数生成0到9的元组,再通过类型转换成list,然后遍历输出即可
    
    # 生成器表达式
    g = (i for i in range(10))
    
    # 输入幸运数字x
    x = int(input("请输入幸运数字:"))
    
    #转换成列表
    lista = list(g)
    
    for i in lista:
        print(i * x,end = ' ')
    
    
    运行结果截图:

    python实验报告一

  4. 给定一个列表member0 = ["今天","天气","真好"],要求通过insert()方法和切片两种方案,把列表member0变成member1 = ["今天","的","天气","是","真好","呀"]

    代码块:
    #程序名:test1.9
    #功 能:.给定一个列表member0 = ["今天","天气","真好"],要求通过insert()方法和切片两种方案,把列表member0变成member1 = ["今天","的","天气","是","真好","呀"]。
    #作 者:xx
    #日 期:2023.3.2
    #思 路:通过切片对列表进行增删改即可
    member0 = ["今天","天气","真好"]
    
    # 切片操作
    member1 = member0[::]
    
    # insert()方法
    member0.insert(1,"的")
    member0.insert(3,"是")
    member0.insert(5,"呀")
    print("insert()方法",member0)
    
    # 切片操作
    member1.insert(1,"的")
    member1.insert(3,"是")
    member1.insert(5,"呀")
    print("切片操作",member1)
    
    运行结果截图:

    python实验报告一

  5. 现有一购物车列表如下:

carts=[{"name":"床", "price":1999, "num":1}, {"name":"枕头", "price":10,"num":2}, {"name":"被子", "price":20, "num":1}]

​ 要求通过用户输入总资产,例如:3000,然后显示购物车列表,计算购物车商品总金额,如果商品 总额大于总资产,提示账户余 额不足,否则,购买成功。

代码块:
#程序名:test1.10
#功 能:判断购物车商品总额和余额的关系
#作 者:李华
#作 者:xx
#日 期:2023.3.2
#思 路:利用get()函数访问集合中的元素,然后相乘,比较输出即可
# 购物车carts=[{"name":"床", "price":1999, "num":1}, {"name":"枕头", "price":10,"num":2}, {"name":"被子", "price":20, "num":1}]

carts = [{"name":"床", "price":1999, "num":1}, {"name":"枕头", "price":10,"num":2}, {"name":"被子", "price":20, "num":1}]
balance = int(input("请输入账户余额:"))

print(carts)

# 商品总额
sum_price = 0

# 利用get()函数访问集合中的值
for i in range(len(carts)):
    sum_price += carts[i].get('price') * carts[i].get('num')	

if sum_price <= balance:
    print("购买成功")
else:
    print("余额不足")

print("商品总额为:",sum_price)

运行结果截图:

python实验报告一

五、实验小结

(包括问题和解决办法、心得体会、意见与建议等)文章来源地址https://www.toymoban.com/news/detail-455905.html

问题和解决方法:
  1. 问题:在列表和集合字典的嵌套中,不知道如何获得values()的值
    解决方法:上网查询后,在嵌套中利用list[i].get(key)函数获取即可。
  2. 问题:列表表达式和生成器表达式分不清
    解决方法:查阅资料后,列表表达式采用方括号,生成器表达式是圆括号。
  3. 问题:不知道如何将一个字符串分割
    解决方法:查询资料并询问同学后,利用split()函数对字符串进行分隔。
心得体会:
  1. Python有许多的内置函数,运用内置函数可以很好的帮助程序运行。
  2. python的注释非常重要,另外列表字典集合可以互相嵌套,极大丰富了数据存储的方式。
  3. python学习要结合书本和其他资料,并且要多敲代码。

到了这里,关于python实验报告一的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 实验报告一、Python 安装与开发环境搭建

    实验报告一、 Python 安装与开发环境搭建 一、实验目的: 1 、熟练掌握 Python 解释器安装与基本用法。 2 、熟练掌握使用 pip 命令安装 Python 扩展库。 3 、熟悉离线安装轮子文件的方法。 二、实验内容: 1 、安装 Python 解释器。 2 、安装 Python 扩展库。 三、实验步骤: 1 、打开

    2024年02月07日
    浏览(26)
  • Python爬虫期末设计(内含源代码及实验报告)

    1. 爬取一章小说内容 2. 爬取一本小说内容 3. 实现搜索作者或者小说名字 进行下载说 4. 把程序打包成exe软件 1. 发送请求 #         确定发送请求的url地址 我们请求网址是什么 #         确定发送请求的方式是什么 get请求 post请求 #         headers 请求参数    2.

    2024年02月10日
    浏览(30)
  • Python 实验报告,实现停车场收费管理系统

    3.某小型收费停车场有50个车位,有一个入口与一个出口,满1小时收费1元,不足1小时不收费,10元封顶,超过1天罚款200元。编写程序实现停车场出入口管理。 要求: (1)定义出入口类,将车位总数与目前停在停车场的车辆信息(每辆车包括车牌和入场时间)定义为类属性;

    2024年02月12日
    浏览(34)
  • 【python】《多媒体技术与应用》实验报告「数字音频处理」

     《多媒体技术与应用》 实验报告 实验名称 数字视频处理 实验时间 2022/4/25 姓名 班级 计非201 学号 成绩 一.  实验目的 1. 掌握数字音频的读取与打开; 2. 掌握数字音频信号的频谱分析; 3. 验证 PCM 编码算法。 二.实验原理 声音是由物体振动而产生的,声波的三要素是频率

    2023年04月16日
    浏览(40)
  • python序列化和结构化数据详解

    序列化和结构化数据是计算机程序中非常重要的概念,它们的原理和应用在许多应用程序中都是必不可少的。Python作为一种高级编程语言,在序列化和结构化数据方面提供了很多优秀的解决方案。在本文中,我们将详细介绍Python中序列化和结构化数据的相关概念和应用。 1.

    2024年02月08日
    浏览(49)
  • 《数据结构》实验报告七:查找

    1、掌握 查找表 、 动态查找表 、 静态查找表 和 平均查找长度 的概念。 2、掌握线性表中 顺序查找 和 折半查找 的方法。 3、学会 哈希函数 的构造方法, 处理冲突 的机制以及 哈希表的查找 。 说明以下概念 1、顺序查找:         顺序查找又叫 线性查找 ,是最基本的查

    2024年02月06日
    浏览(32)
  • 《数据结构》实验报告五:二叉树

    1、掌握 二叉 树的 基本特性 2、掌握二叉树的 先序、中序、后序 的 递归 遍历算法 3、理解二叉树的 先序、中序、后序 的 非递归 遍历算法 4、通过求二叉树的 深度 、 叶子结点数 和 层序遍历 等算法,理解二叉树的基本特性 说明以下概念 1、二叉树:        二叉树是n个结

    2024年02月05日
    浏览(37)
  • python数据结构与算法-动态规划(最长公共子序列)

    一个序列的子序列是在该序列中删去若干元素后得 到的序列。 例如:\\\"ABCD”和“BDF”都是“ABCDEFG”的子序列。 最长公共子序列(LCS) 问题: 给定两个序列X和Y,求X和Y长度最大的公共子字列。 例:X=\\\"ABBCBDE”Y=\\\"DBBCDB”LCS(XY)=\\\"BBCD\\\" 应用场景:字符串相似度比对 (1)问题思考 思考: 暴

    2024年02月08日
    浏览(42)
  • 《数据结构》实验报告二:顺序表 链表

    1、掌握线性表中元素的 前驱、后续 的概念。 2、掌握顺序表与链表的 建立 、 插入 元素、 删除 表中某元素的算法。 3、对线性表相应算法的 时间复杂度 进行分析。 4、理解顺序表、链表数据结构的特点( 优缺点 )。 说明以下概念 1、线性表:         具有 相同特性 的数

    2024年02月08日
    浏览(33)
  • 【头歌】 Python数据结构 Python案例 实验一python初探(1)

    任务描述 本关任务:编写一个程序,依次输入用户的学号,姓名和手机号码 再依次输出相关信息 为了完成本关任务,你需要掌握: 1.如何输入数据 2.如何输出 输入语句 变量 = input( 提示性文字 ) 语句功能:系统显示提示性文字,等待用户输入。 将用户输入的信息存储在指定

    2024年04月11日
    浏览(55)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包