商务分析方法与工具(二):Python的趣味快捷-序列结构解决电影推荐

news2025/1/10 21:46:57

Tips:"分享是快乐的源泉💧,在我的博客里,不仅有知识的海洋🌊,还有满满的正能量加持💪,快来和我一起分享这份快乐吧😊!

喜欢我的博客的话,记得点个红心❤️和小关小注哦!您的支持是我创作的动力!

目录

  • 商务分析方法与工具(二):Python的趣味快捷-序列结构解决电影推荐
    • 一、实验目的
      • 1.掌握Python中的列表和元组的使用方法
      • 2.掌握Python中的字典、集合以及其他常见数据结构的使用方法
    • 二 、实验准备
    • 三、实验内容
      • 1. 编写程序,生成包含1000个0—100之间的随机整数,并统计每个元素的出现次数(分别用集合和字典来进行次数的统计)
      • 2.编写程序,用户输入一个列表和两个整数作为下标,然后使用切片获取并输出列表中借阅介于两个下标之间的元素组成的子列表。例如,用户输入[1,2,3,4,5,6] 和2、5,程序输出[3,4,5,6]
      • 3.编写程序生成包含20个随机数的列表,然后将前10个元素升序排列,后10个元素降序排列
      • 4.成绩统计分析:有10名同学的python课程成绩分别为:94, 89, 96, 88, 92, 86, 69, 95, 78, 85,利用列表分析成绩,输出平均值、最高的3个成绩和最低的3个成绩
      • 5.设计一个字典,用户输入内容作为“键”,然后输出字典中对应的“值”,如果用户输入的“键”不在,则输出“你输入的键不存在”
      • 6.设计程序:假设已有若干用户名字及其喜欢的电影清单,现有某用户,已看过并喜欢一些电影,现在想找个新电影看看,又不知道看什么好。请推荐电影。(代码见教材)
    • 四、实验代码和过程
      • 1. 编写程序,生成包含1000个0—100之间的随机整数,并统计每个元素的出现次数(分别用集合和字典来进行次数的统计)
      • 2.编写程序,用户输入一个列表和两个整数作为下标,然后使用切片获取并输出列表中借阅介于两个下标之间的元素组成的子列表。例如,用户输入[1,2,3,4,5,6] 和2、5,程序输出[3,4,5,6]
      • 3.编写程序生成包含20个随机数的列表,然后将前10个元素升序排列,后10个元素降序排列
      • 4.成绩统计分析:有10名同学的python课程成绩分别为:94, 89, 96, 88, 92, 86, 69, 95, 78, 85,利用列表分析成绩,输出平均值、最高的3个成绩和最低的3个成绩
      • 5.设计一个字典,用户输入内容作为“键”,然后输出字典中对应的“值”,如果用户输入的“键”不在,则输出“你输入的键不存在”
      • 6.设计程序:假设已有若干用户名字及其喜欢的电影清单,现有某用户,已看过并喜欢一些电影,现在想找个新电影看看,又不知道看什么好。请推荐电影。(代码见教材)
    • 五、实验中的问题和体会
      • 问题1:
      • 体会1:
      • 问题2:
      • 体会2:
      • 问题3:
      • 体会3:
      • 问题4:
      • 体会4:
      • 问题5:
      • 体会5:
      • 问题6:
      • 体会6:

商务分析方法与工具(二):Python的趣味快捷-序列结构解决电影推荐

一、实验目的

1.掌握Python中的列表和元组的使用方法

2.掌握Python中的字典、集合以及其他常见数据结构的使用方法

二 、实验准备

练习教材第3章的程序代码(另存为WORD)

三、实验内容

1. 编写程序,生成包含1000个0—100之间的随机整数,并统计每个元素的出现次数(分别用集合和字典来进行次数的统计)

2.编写程序,用户输入一个列表和两个整数作为下标,然后使用切片获取并输出列表中借阅介于两个下标之间的元素组成的子列表。例如,用户输入[1,2,3,4,5,6] 和2、5,程序输出[3,4,5,6]

3.编写程序生成包含20个随机数的列表,然后将前10个元素升序排列,后10个元素降序排列

4.成绩统计分析:有10名同学的python课程成绩分别为:94, 89, 96, 88, 92, 86, 69, 95, 78, 85,利用列表分析成绩,输出平均值、最高的3个成绩和最低的3个成绩

5.设计一个字典,用户输入内容作为“键”,然后输出字典中对应的“值”,如果用户输入的“键”不在,则输出“你输入的键不存在”

6.设计程序:假设已有若干用户名字及其喜欢的电影清单,现有某用户,已看过并喜欢一些电影,现在想找个新电影看看,又不知道看什么好。请推荐电影。(代码见教材)

四、实验代码和过程

1. 编写程序,生成包含1000个0—100之间的随机整数,并统计每个元素的出现次数(分别用集合和字典来进行次数的统计)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.编写程序,用户输入一个列表和两个整数作为下标,然后使用切片获取并输出列表中借阅介于两个下标之间的元素组成的子列表。例如,用户输入[1,2,3,4,5,6] 和2、5,程序输出[3,4,5,6]

在这里插入图片描述
在这里插入图片描述

3.编写程序生成包含20个随机数的列表,然后将前10个元素升序排列,后10个元素降序排列

在这里插入图片描述
在这里插入图片描述

4.成绩统计分析:有10名同学的python课程成绩分别为:94, 89, 96, 88, 92, 86, 69, 95, 78, 85,利用列表分析成绩,输出平均值、最高的3个成绩和最低的3个成绩

在这里插入图片描述
在这里插入图片描述

5.设计一个字典,用户输入内容作为“键”,然后输出字典中对应的“值”,如果用户输入的“键”不在,则输出“你输入的键不存在”

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

6.设计程序:假设已有若干用户名字及其喜欢的电影清单,现有某用户,已看过并喜欢一些电影,现在想找个新电影看看,又不知道看什么好。请推荐电影。(代码见教材)

在这里插入图片描述在这里插入图片描述

五、实验中的问题和体会

问题1:

在第1小题生成随机数中,一开始随机数模块功能分不清区间包含关系,导致结果出错,而在输出101行结果后才发现结果显示不够清晰,乱序排版影响美观,而在有序集合转换与无序字典转换时有点疑惑。

体会1:

深入学习random.randint(a,b)的用法,在结果输出时用end=‘\t’对结果进行美化排版,在集合法强制转换set()时,发现转换为的set()默认升序,因而在字典法中先给列表进行升序,效果显著。

问题2:

在第2小题进行切片操作过程中,由于知识储备不足,对于切片的使用显得有些陌生,导致切片临界值取舍不定情况。

体会2:

在查阅相关资料后,对于切片区间有了更进一步的理解,为了追求程序的互动性与趣味性,列表的输入和需求的实现都注重互动性。

问题3:

在第3小题中一开始以为将原序列深复制copy.deepcopy()两份,第一份用for循环取出前十个数进行升序操作,第二份用for循环取出后十个数进行降序操作,再将两份合并,但得到的答案有点繁杂。

体会3:

学完切片后,发现切片操作可以简化很多繁杂步骤,省去了开辟内存空间复制其他数组进行操作,也节省了时间复杂度和空间复杂度。

问题4:

在第4小题的求成绩平均分中,刚开始是采取总分除以人数的方式,但发现过程显得繁杂,尤其是for循环求和。

体会4:

在认真查找有关numpy库的内置函数numpy.mean()平均值函数后,才发现问题变得很简单,顺便也学会了求中位数的numpy.median()函数用法,而在最大三位和最小三位则采取先排序再取值的办法。

问题5:

在第5小题创建字典时采用互动性方法让用户自己输入自己创建字典的方法,但是在创建字典过程中发现双重for循环,一层是键,一层是值会导致值更新的失误。

体会5:

仔细回顾上节课学到的内建函数zip(a,b)进行键值匹配创建字典,达到了理想效果,而在查询键是否存在时采用if 语句+in的方法,最终完美解决此题。

问题6:

在第六小题上,由于题目原理理解不深,导致无从下手,花了很多时间试写出来的代码很粗糙。

体会6:

参考完标准答案后,试着去理解里面的每一处细节,虽然最后还有一些地方理解的不是很透彻,希望自己不断积累,学多了就能理解!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1654853.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【C语言】内存函数的概念,使用及模拟实现

Tiny Spark get dazzling some day. 目录 1. memcpy-- 函数原型-- 函数使用-- 函数的模拟实现 2.memmove-- 函数原型-- 函数使用-- 函数的模拟实现 3. memset-- 函数原型-- 函数使用-- 函数的模拟实现 4. memcmp-- 函数原型-- 函数使用-- 函数的模拟实现 1. memcpy 使用需包含…

3dmax-vray6渲染器参数设置

适用于3dmax2018-2023版本 一、【公用】 小图输出大小:1500*1125,勾选大气、效果; 大图输出大小:3000*2250,勾选大气、效果、置换; 二、【vray】 小图抗锯齿类型:渐进式;最小细分:1,最大细分:100&#…

C++新特性

1 智能指针 1.1 为什么需要智能指针 智能指针主要解决以下问题: 内存泄漏:内存手动释放,使用智能指针可以自动释放共享所有权指针的传播和释放,比如多线程使用同一个对象时析构问题,比如: C里面的四个智…

解决springboot项目的网站静态页面显示不全问题

在通过springboot搭建项目时,为了能够访问静态的前端页面,我们考虑到访问的优先级问题,通常选择将资源放在recourses/static的目录下,如下: 这时可能会出现类似于下面这种图片无法加载、没有按照指定位置显示的情况&am…

R语言:r画韦恩图

> setwd("") > library(openxlsx) > library(ggvenn) > data <- read.xlsx("韦恩图种2.xlsx") data$P <- ifelse(data$P 0, "F", "T") data$N <- ifelse(data$N 0, "F", "T")> data &l…

流星烛台如何交易?Anzo Capital昂首资本3步盈利收场

各位投资者通过之前的文章可以准确的辨认出什么是流星烛台了&#xff0c;但是各位投资者一旦遇到流星图案知道怎么交易吗?其实一点都不困难&#xff0c;只要掌握住流星图案的交易真棒&#xff0c;Anzo Capital昂首资本3步就可以盈利收场。 首先&#xff0c;投资者需要确定图…

技术速递|介绍 .NET MAUI 社区工具包 v8 :包含 TouchBehavior 支持!

作者&#xff1a;Gerald Versluis 排版&#xff1a;Alan Wang .NET MAUI 社区工具包团队很自豪地向您介绍 .NET MAUI 社区工具包的第 8 版&#xff01; 在这个最新的主要版本中&#xff0c;我们为您带来了备受期待的 TouchBehavior&#xff08;以前称为 TouchEffect&#xff0…

【C++】详解STL容器之一的 vector

目录 概述 迭代器 数据结构 优点和缺点 接口介绍 begin end rbegin rend resize reseve insert erase 其他一些接口 模拟实现 框架 获取迭代器 深浅拷贝 赋值重载 reseve resize 拷贝构造 构造 析构 insert erase 其他 概述 vector是STL的容器之一。…

二叉树遍历总结

7.二叉树 二叉树理论基础 二叉树的种类 在我们解题过程中二叉树有两种主要的形式&#xff1a;满二叉树和完全二叉树。 满二叉树 完全二叉树 二叉搜索树 平衡二叉搜索树 C中map、set、multimap&#xff0c;multiset的底层实现都是平衡二叉搜索树&#xff0c;所以map、set的增…

2024.5.8 2.二叉树的最大深度 (简单)

给定一个二叉树 root &#xff0c;返回其最大深度。 二叉树的 最大深度 是指从根节点到最远叶子节点的最长路径上的节点数。 示例 1&#xff1a; 输入&#xff1a;root [3,9,20,null,null,15,7] 输出&#xff1a;3 示例 2&#xff1a; 输入&#xff1a;root [1,null,2] 输…

GZIP文件格式解析和Inflate静态Huffman解压缩

GZIP是封装了Deflate压缩的格式文件&#xff1b;Deflate使用了无压缩、HuffmanLZ77进行压缩&#xff1b;解压是Inflate&#xff0c;Huffman包括静态Huffman压缩和动态Huffman压缩两种模式。 Java语言实现了GZIP格式解析、Inflate的静态Huffman解压缩、CRC32校验 算法。 gzip文…

7-AMCA Mal,可通过与蛋白质上的巯基反应生成具有荧光的标记物

【产品概述】 7-AMCA Mal&#xff0c;也被称为7-AMCA maleimide&#xff0c;是一种在生物医学领域中常用的荧光染料。 中文名称&#xff1a;7-AMCA 马来酰亚胺 英文名称&#xff1a;7-AMCA Mal&#xff0c;7-AMCA maleimide CAS号&#xff1a;N/A 分子式&#xff1a;C18H17N3…

STEP BY STEP带你使用Docker搭建MySql-MGR高可用集群

数据的重要性 数据已成为当今数字时代最重要的资产之一&#xff0c;对于企业的成功至关重要。它可以帮助企业了解客户、市场和自身运营&#xff0c;提高运营效率&#xff0c;做出明智决策&#xff0c;推动创新&#xff0c;并获得竞争优势。 数据的采集&#xff0c;存储&#…

解析源代码安全的防泄密解决途径

随着各行各业业务数据信息化发展&#xff0c;各类产品研发及设计等行业&#xff0c;都有关乎自身发展的核心数据&#xff0c;包括业务数据、代码数据、机密文档、用户数据等敏感信息&#xff0c;这些信息数据有以下共性&#xff1a; 属于核心机密资料&#xff0c;万一泄密会对…

TCP四次挥手中为什么 TIME_WAIT 等待的时间是 2MSL?

TCP 连接断开 1、TCP 四次挥手过程是怎样的&#xff1f;如下图 2、为什么 TIME_WAIT 等待的时间是 2MSL&#xff1f; MSL 是 Maximum Segment Lifetime&#xff0c;报文最大生存时间&#xff0c;它是任何报文在网络上存在的最长时间&#xff0c;超过这个时间报文将被丢弃。因…

JavaEE技术之MySql高级-ShardingSphere5(SpringBoot版本:3.0.5)

文章目录 1 ShardingSphere-JDBC读写分离1.1 创建SpringBoot程序1.1.1、创建项目1.1.2、添加依赖1.1.3、创建实体类1.1.4、创建Mapper1.1.5、配置 Spring Boot1.1.6、配置shardingsphere 1.2 测试1.2.1 读写分离测试1.2.2 负载均衡测试1.2.3 事务测试常见错误 2 ShardingSphere…

电子商务对应的职业有哪些?10年互联网人透底行业秘密!

电子商务对应的职业有哪些&#xff1f;10年互联网人透底行业秘密&#xff01; 事实说话&#xff0c;实事求是&#xff0c;不要再把美颜滤镜下的市场&#xff0c;传给新人小伙伴了&#xff01; 大家好&#xff0c;我是微三云胡佳东&#xff0c;一家软件公司负责人&#xff01; …

20240508在RK3588的Buildroot系统下播放MP4视频

20240508在RK3588的Buildroot系统下播放MP4视频 2024/5/8 18:09 开发板&#xff1a;飞凌的OK3588-C SDK&#xff1a;Linux/Buildroot R4版本 4.4.2.5 播放 H264 格式视频 [rootok3588:/]# gst-launch-1.0 filesrc location13850_h264.mp4 ! qtdemux ! queue ! h264parse ! mpp…

3D模型素材有哪些常见的用途?

3D模型素材已经成为了设计、游戏开发、电影制作和建筑等领域的重要工具。它们以其独特的形式和丰富的细节&#xff0c;为这些领域的专业人士提供了无尽的创作可能性。 1.建筑和室内设计&#xff1a;在建筑设计中&#xff0c;3D模型可以帮助建筑师更直观地展示设计方案&#xff…

WiFi原理

一、引言 简介&#xff1a;WiFi&#xff0c;全称Wireless Fidelity&#xff0c;是一种允许电子设备连接到一个无线局域网&#xff08;WLAN&#xff09;的技术&#xff0c;通常使用2.4GHz或5GHz UHF&#xff08;特高频&#xff09;和SHF&#xff08;超高频&#xff09;ISM&…