python 实验报告一 Python序列结构

这篇具有很好参考价值的文章主要介绍了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实验报告,Python,python,开发语言,算法

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

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

    python实验报告,Python,python,开发语言,算法

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

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

    python实验报告,Python,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实验报告,Python,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实验报告,Python,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实验报告,Python,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实验报告,Python,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实验报告,Python,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实验报告,Python,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实验报告,Python,python,开发语言,算法

五、实验小结

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

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

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

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

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

相关文章

  • 数据结构实验报告,二叉树的基本操作(C语言)

    作者:命运之光 专栏:数据结构 实验六 二叉树的基本操作 实验环境:Visual C++或Dev C++ 实验目的: 1、掌握二叉树创建; 2、掌握二叉树的遍历及常用算法。 实验内容: 通过完全前序序列创建一棵二叉树,完成如下功能: 1)输出二叉树的前序遍历序列; 2)输出二叉树的中序遍

    2024年02月09日
    浏览(28)
  • 数据结构“基于哈夫曼树的数据压缩算法”的实验报告

    一个不知名大学生,江湖人称菜狗 original author: jacky Li Email : 3435673055@qq.com Last edited: 2022.11.20 目录 数据结构“基于哈夫曼树的数据压缩算法”的实验报告 一、实验目的 二、实验设备 三、实验内容 1.【问题描述】 2.【输入要求】 3.【输出要求】 4.【实验提示】 四、实验步骤

    2024年02月09日
    浏览(43)
  • Python实验报告五 python基础试题练习

    文件 一、实验目的与要求 1、掌握文件的打开和关闭的方法。 2、掌握文本文件和二进制文件文件的不同操作,如读写、重命名、删除。 3、掌握os与os.path模块文件和文件夹的操作 二、题目 1 编写程序,创建文件data.txt,共100行,第n行存放[100*(n-1), 100*n)之间的素数。 2 批量生

    2024年02月06日
    浏览(38)
  • Python实验报告三 python基础试题练习

    1、编写函数求三个整数的最大值,函数原型为 def max3(a, b, c) 2、编写函数main()接收一个包含若干整数的列表参数lst,要求返回其中大于8的偶数组成的新列表,如果不存在就返回空列表。如果接收到的参数lst不是列表或者列表中不都是整数,就返回‘数据不符合要求’。 3、函

    2023年04月19日
    浏览(97)
  • Python实验报告四 python基础试题练习

    定义一个学校人员类SchoolPerson, 其中属性:姓名name、性别sex、年龄age;         方法:设置人员的各个属性的set_info方法;                   获取各属性值的get_info方法。   定义好类以后,再定义2个人员进行测试。  在第1个题的基础上添加两个方法: 其中,__init__()方

    2023年04月26日
    浏览(55)
  • python实验报告一

    掌握:Python常用内置对象-列表、元组、字典、集合。 掌握运算符和内置函数对列表、元组、字典、集合的操作。 理解列表推导式、生成器表达式的工作原理。 掌握切片操作。 掌握序列解包的用法。 编写程序,用一个变量存储以下信息:学号,姓名,所在学院,专业名称。

    2024年02月06日
    浏览(28)
  • 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

领红包