【科学计算语言】实验三 Python复杂数据类型

【目的和要求】

(1)掌握Python语言中的组合数据类型

(2)掌握列表、元组、字典、集合及字符串的基本应用

(3)熟练运用有关序列操作的Python内置函数

【实验准备】

【实验内容】

1. 实验练习:掌握字典相关方法

更新或添加元素:dict1[key] = value

例如:

items():变量解包:即将字典转化为键、值作为元组的列表

例如:

keys();键列表

例如:

values():值列表

例如:

has_key():判断是否存在某个键,返回结果true 或false

例如:

del 删除元素:调用python自身函数删除

例如:

len():取得字典中键值对个数

例如:

update():在原字典上合并字典,键相同时会被覆盖。

例如:

get():取得某个键对应的值

例如:

pop():弹出指定键对应的值

popitem():随机弹出键值对

clear():清除所有元素

例如

字典的遍历:

2.实验练习:集合相关方法:

len():元素个数

例如:

add():添加元素

例如:

remove():删除元素

例如:

update():合并集合

例如:

pop():随机弹出某个元素

例如:

集合关系操作

s|t:s和t的并集

例如:

s&t:s和t的交集

例如:

s-t:求差集,存在于s集合而不存在于t集合中的

例如:

s^t:求对称差集

例如:

3. 下表是某商品销售价目表:

品名

     单价(元)

王老吉凉茶

       4

    可口可乐

       3

脉动

       6

   统一方便面

       5

 火腿肠

2.5

运用Python序列结构设计一个字典,要求所有商品调整价格(8折),输出新价格。

‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬4. 利用random随机函数库生成一个20个元素的整数列表,编程实现如下功能操作:

  1. 返回并输出索引为6的元素;
  2. 求列表数据中的最大值、最小值和平均值;
  3. 在索引为8的位置增加一个数据68

调整商品价格的Python代码:

# 商品价格字典

price_dict = {

    '王老吉凉茶': 4,

    '可口可乐': 3,

    '脉动': 6,

    '统一方便面': 5,

    '火腿肠': 2.5

}

# 打折率

discount_rate = 0.8

# 调整商品价格

discounted_prices = {item: price * discount_rate for item, price in price_dict.items()}

# 输出新价格

for item, new_price in discounted_prices.items():

    print(f"{item}的新价格为:{new_price}")

利用random库生成列表并进行操作的Python代码:

import random

# 生成随机整数列表

random_list = [random.randint(1, 100) for _ in range(20)]

# 返回并输出索引为6的元素

element_at_index_6 = random_list[6]

print(f"索引为6的元素为:{element_at_index_6}")

# 求列表数据中的最大值、最小值和平均值

max_value = max(random_list)

min_value = min(random_list)

average_value = sum(random_list) / len(random_list)

print(f"最大值:{max_value}")

print(f"最小值:{min_value}")

print(f"平均值:{average_value}")

# 在索引为8的位置增加一个数据68

random_list.insert(8, 68)

# 输出修改后的列表

print("修改后的列表:", random_list)

思考题:

列表和元组的区别:

  1. 可变性
    • 列表(List)是可变的,可以通过索引修改、添加或删除元素。
    • 元组(Tuple)是不可变的,一旦创建就不能被修改,无法添加、删除或修改元素。
  2. 语法表示
    • 列表使用方括号 [] 表示,如 [1, 2, 3]
    • 元组使用圆括号 () 表示,如 (1, 2, 3)
  3. 性能
    • 由于元组是不可变的,其在迭代和访问元素时可能比列表稍微更快。

Python中适用于序列操作的一些内置函数:

  1. len(sequence) - 返回序列的长度。
  2. max(sequence) - 返回序列的最大值。
  3. min(sequence) - 返回序列的最小值。
  4. sum(sequence) - 返回序列所有元素的和。
  5. sorted(sequence) - 返回一个排序后的新列表,不修改原始序列。
  6. reversed(sequence) - 返回一个反向的迭代器,可以用来反向遍历序列。
  7. enumerate(sequence) - 返回一个包含索引和元素的枚举对象。
  8. zip(sequence1, sequence2, ...) - 将多个序列中对应的元素打包成元组,返回一个包含这些元组的新列表。

i

       s=s+z

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

HTML5的完整学习笔记

HTML 什么是HTML: 作为前端三件套之一,HTML的全称是超文本标记语言(Hypertext Markup Language)。HTML是一种标记语言,用于创建网页。它由一系列标签组成,这些标签用于定义网页的结构和内容。HTML标签告诉…

[XR806开发板试用] XR806——基于FreeRTOS下部署竞技机器人先进模糊控制器

前言 很荣幸参与到由“极术社区和全志在线联合组织”举办的XR806开发板试用活动。本人热衷于各种的开发板的开发,同时更愿意将其实现到具体项目中。秉承以上原则,发现大家的重心都放在开发中的环境构建过程,缺少了不少实际应用场景的运用&am…

谷歌Gemini造假始末

💡大家好,我是可夫小子,《小白玩转ChatGPT》专栏作者,关注AIGC、读书和自媒体。 在过去一年中,OpenAI ChatGPT引发了一股AI新浪潮,而谷歌则一直处于被压制的状态,迫切需要一款现象级的AI产品来…

【UML】第10篇 类图(属性、操作和接口)(2/3)

目录 3.3 类的属性(Attribute) 3.3.1 可见性(Visibility) 3.3.2 属性的名称 3.3.3 数据类型 3.3.4 初始值 3.3.5 属性字符串 3.4 类的操作(Operations) 3.4.1 参数表 3.4.2 返回类型 3.5 类的职责…

浅述无人机技术在地质灾害应急救援场景中的应用

12月18日23时,甘肃临夏州积石山县发生6.2级地震,震源深度10千米,灾区电力、通信受到影响。地震发生后,无人机技术也火速应用在灾区的应急抢险中。目前,根据受灾地区实际情况,翼龙-2H应急救灾型无人机已出动…

Kafka集群架构原理(待完善)

kafka在zookeeper数据结构 controller选举 客户端同时往zookeeper写入, 第一个写入成功(临时节点), 成为leader, 当leader挂掉, 临时节点被移除, 监听机制监听下线,重新竞争leader, 客户端也能监听最新leader leader partition自平衡 leader不均匀时, 造成某个节点压力过大, …

一套rk3588 rtsp服务器推流的 github 方案及记录 -03(完结)

opencv 解码记录 解码库使用的时候发现瑞芯微以前做过解码库对ffmpeg和gstreamer的支持 然后最近实在不想再调试Rtsp浪费时间了,就从这中间找了一个比较快的方案 ffmpeg 带硬解码库编译 编译流程参考文献 https://blog.csdn.net/T__zxt/article/details/12342435…

opencv静态链接error LNK2019

opencv 3.1.0 静态库,包括以下文件 只链接opencv_world310d.lib,报错 opencv_world310d.lib(matrix.obj) : error LNK2019: 无法解析的外部符号 _ippicvsFlip_16u_I8,该符号在函数 "enum IppStatus (__stdcall*__cdecl cv::getFlipFu…

鸿蒙系列--组件介绍之基础组件

一、通用属性和文本样式 针对包含文本元素的组件(比如:Text、Span、Button、TextInput等),可以设置一些通用的文本样式,比如颜色:fontColor、大小:fontSize、样式:fontStyle、 粗细…

Spring(1)Spring从零到入门 - Spring特点,系统架构简介,两个核心概念IoC与DI(涉及管理第三方bean)

Spring(1)Spring从零到入门 - Spring特点,系统架构简介,两个核心概念IoC与DI(涉及管理第三方bean) 引入:单体服务器 "单体服务器的开发"通常指的是在一个单一的服务器上构建和部署整个…

微信小程序 动态设置状态栏样式

onLoad(options) {//修改状态栏标题wx.setNavigationBarTitle({title: 页面标题, //页面标题success: () > {}, //接口调用成功的回调函数fail: () > {}, //接口调用失败的回调函数complete: () > {} //接口调用结束的回调函数(调用成功、失败…

C# SixLabors.ImageSharp.Drawing的多种用途

生成验证码 /// <summary> /// 生成二维码 /// </summary> /// <param name"webRootPath">wwwroot目录</param> /// <param name"verifyCode">验证码</param> /// <param name"width">图片宽度</…

互联网加竞赛 python+大数据校园卡数据分析

0 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 &#x1f6a9; 基于yolov5的深度学习车牌识别系统实现 &#x1f947;学长这里给一个题目综合评分(每项满分5分) 难度系数&#xff1a;4分工作量&#xff1a;4分创新点&#xff1a;3分 该项目较为新颖&am…

德人合科技 | 设计公司文件加密系统——天锐绿盾自动智能透明加密防泄密系统

设计公司文件加密系统——天锐绿盾自动智能透明加密防泄密系统 PC端访问地址&#xff1a; www.drhchina.com 一、背景介绍 设计公司通常涉及到大量的创意作品、设计方案、客户资料等重要文件&#xff0c;这些文件往往包含公司的核心价值和商业机密。因此&#xff0c;如何确保…

@vue/cli脚手架

0_vue/cli 脚手架介绍 目标: webpack自己配置环境很麻烦, 下载vue/cli包,用vue命令创建脚手架项目 vue/cli是Vue官方提供的一个全局模块包(得到vue命令), 此包用于创建脚手架项目 脚手架是为了保证各施工过程顺利进行而搭设的工作平 vue/cli的好处 开箱即用 0配置webpack babe…

个人财务工具、密钥管理平台、在线会计软件、稍后阅读方案 | 开源专题 No.51

gethomepage/homepage Stars: 10.1k License: GPL-3.0 这个项目是一个现代化、完全静态的、快速且安全的应用程序仪表盘&#xff0c;具有超过 100 种服务和多语言翻译的集成。 快速&#xff1a;网站在构建时以静态方式生成&#xff0c;加载时间飞快。安全&#xff1a;所有对后…

全面掌握XSS漏洞攻击,实战案例从Self-XSS到账户接管,以及通过参数污染的XSS实现攻击

全面掌握XSS漏洞攻击,实战案例从Self-XSS到账户接管。 什么是跨站脚本攻击 (XSS)? 跨站脚本攻击(XSS)是一种网络安全漏洞,允许攻击者破坏用户与易受攻击的应用程序之间的交互。它允许攻击者绕过同源策略,该策略旨在将不同的网站隔离开来。XSS漏洞通常允许攻击者伪装成受…

Unity中Shader缩放矩阵

文章目录 前言一、直接相乘缩放1、在属性面板定义一个四维变量&#xff0c;用xyz分别控制在xyz轴上的缩放2、在常量缓存区申明该变量3、在顶点着色器对其进行相乘&#xff0c;来缩放变换4、我们来看看效果 二、使用矩阵乘法代替直接相乘缩放的原理1、我们按如下格式得到缩放矩阵…

【CentOS 7.9 分区】挂载硬盘为LVM操作实例

LVM与标准分区有何区别&#xff0c;如何选择 目录 1 小系统使用LVM的益处&#xff1a;2 大系统使用LVM的益处&#xff1a;3 优点&#xff1a;CentOS 7.9 挂载硬盘为LVM操作实例查看硬盘情况格式化硬盘创建PV创建VG创建LV创建文件系统并挂载自动挂载添加&#xff1a;注意用空格间…

Asp.Net Core 项目中常见中间件调用顺序

常用的 AspNetCore 项目中间件有这些&#xff0c;调用顺序如下图所示&#xff1a; 最后的 Endpoint 就是最终生成响应的中间件。 Configure调用如下&#xff1a; public void Configure(IApplicationBuilder app, IWebHostEnvironment env){if (env.IsDevelopment()){app.UseD…