版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Python组合数据类型概述02列表高级操作
04元组特性与应用
06集合特性与操作08字典基础操作
10技能拓展:利用大模型生成代码列表基本操作任务4-1敏感词检测实现任务4-2公司年终随机抽奖任务4-3数据打包和解包任务4-4公司月薪top5名单010305070911目录列表特性与创建方式为何需要组合?结构化关联数据,提升代码简洁性与处理效率。字典
(Dictionary)特性:无序、键值对集合
创建:{}`或`dict()元组
(Tuple)特性:有序、不可变序列创建:()'或'tuple()'列表
(List)特性:有序、可变序列创建:'[]`或`list
()集合
(Set)特性:无序、唯一元素
创建:'{}`或`set()学生信息管理使用列表或字典清晰地结构化
和批量操作复杂的学生数据。敏感词检测利用列表存储敏感词,快速检测
并替换文本内容。电商商品管理高效管理商品信息,适用于批
量数据操作。员工抽奖活动将员工信息存储在元组中,确
保数据不变,再进行随机抽样。组合类型应用场景元组通过圆括号创建,具有不可变性和有
序性,支持索引访问元素。字典创建与访问字典通过大括号或dict()创建,以键值对
存储数据,键唯一且不可变,支持键访问
或get()
方法。列表可用中括号`[]`或list()`函数创建,支持索引、切片及循环访问元素。集合创建与访问集合用大括号或set()
函数创建,元素无序
且唯一,不支持索引访问。列表创建与访问
元组创建与访问创建与访问方法append()scores.append(75)extend()scores.extend([88,95])insert()
10098100
87
92scores.insert(
1,100
)my_list#
使
用[
]
或list()
创建
scores=[98,87,92]tasks=
list
()元素添加与修改Part
1:创建(Creation)Part2:添加(Adding)del
scores[i]scores.remove(value)scores.pop()scores.clear()sort()98
75就地排序(In-placesort)reverse()98
98就地反转(In-placereverse)sorted()98
75排序与删除删除(Deletion)-The
DeletionToolkit创建新排序列表(Createsanewsorted
list)[i]value排
序(Sorting)92
7592
7575
92929898929275(1)sort()
方法sort()方法用于对列表进行就地排序,即直接修改原始列表。它具有以下特点:默认按升序排列(从小到大)。可以通过
reverse
参数指定是否按降序排列(从大到小)。该方法没有返回值,直接在原列表上进行修改。(2)reverse()方法reverse()
方法用于将列表中的元素反转其顺序,它具有以下特点:直接对原始列表进行修改,不会返回副本。它并不对列表元素进行排序,而只是反转列表中元素的顺序。排序与删除(3)sorted()
方法sorted()方法用于返回一个新的已排序列表,原列表保持不变,它具有以下特点:
与sort()不
同
,sorted()不会修改原有列表,而是创建一个新列表。同样可以使用reverse参数来控制排序顺序。排序与删除(1)del
语句del
是一个Python
语句,用于删除指定索引的元素或整个列表,其具有以下特点:可以通过索引删除单个元素。可以用来删除整个列表。如果删除的索引超出范围,会引发IndexError
异常。(2)remove()
方法remove()方法用于删除列表中第一个匹配的指定值,其具有以下特点:如果列表中存在多个相同的值,只会删除第一个。如果指定的值不存在,将引发ValueError
异常。排序与删除(3)pop()
方法pop()
方法用于删除并返回指定位置的元素。如果没有指定位置,则默认删除并返回
最后一个元素,其具有以下特点:返回被删除的元素。可以通过索引删除任何位置的元素,若索引超出范围,则引发IndexError
异常。(4)clear()
方法clear()方法用于删除列表中的所有元素,其具有以下特点:列表将变为空列表,但对象本身仍然存在。不会引发错误,即使列表已经是空的。排序与删除任务4-1敏感词检测实现01敏感词列表定义定义含多个敏感词的列表,通过input()获取用户输入文本并转为小写以确保匹配不受
大小写影响。敏感词列表定义敏感词检测功能实现定义敏感词列表,获取用户输入文本并转为小写,
遍历检测敏感词并用等长星号替换,输出检测结果1敏感词替换方法利
用replace()实现大小写不敏感替换,用等长星号
替代敏感词并输出结果。文本匹配与替换在社交平台或评论区,用户可能会发布包含敏感词的内容。为了维护良好的网络环境,需要实现一个简单的敏感词检测功能。该功能将检查用户输
入的文本是否包含一系列预定义的敏感词,并输出相关提示。在这个例子
中,用列表来存储敏感词,并通过用户输入进行检测。任务描述首先,需要准备敏感词数据,即创建一个包含需要检测的敏感词语列表。
之后,程序会接收用户的输入,获取用户提供的待检测文本内容。接下来
进入敏感词检测的核心环节,程序会遍历预先设定的敏感词列表,逐一检
查用户输入的文本中是否包含这些敏感词,并将所有检测到的敏感词记录
下来并输出。最后,程序会根据检测结果输出最终信息:如果检测到任何
敏感词,则会给出相应的提示信息;反之,如果未检测到敏感词,则输出
“无敏感词”的提示。任务分析步骤1:数据准备#定义敏感词列表sensitive_words
=['坏话','辱骂','暴力','诈骗']步骤2:用户输入#
用
户
输
入user_input=input("请输入您的文本:")任务实现步骤1:数据准备#定义敏感词列表sensitive_words
=['坏话','辱骂','暴力','诈骗']步骤2:用户输入#
用
户
输
入user_input=input("请输入您的文本:")任务实现步骤3:转换为小写#将用户输入转为小写,以保证匹配时不区分大小写
user_input_lower
=user_input.lower()步骤4:初始化变量#用于存储检测到的敏感词found_words=[]#用于存储修改后的句子,初始为原始输入句子
modified_input
=user_input任务实现#检查输入文本中是否包含敏感词for
word
in
sensitive_words:if
word
in
user_input_lower:found_words.append(word)#添加检测到的敏感词#计算敏感词的长度,用于生成相应数量的*号replacement=¹*¹*len(word)#使用replace方法替换原始句子中的敏感词modified_input=modified_input.replace(word,replacement,modified_input.lower().count(word))#
替换所有匹配项步骤5:敏感词检测任务实现步骤6:输出结果#根据检测结果输出信息if
found_words:print(f"检测到敏感词:{','join(found_words)}")print(f"替换后的句子:{modified_input}")else:print(f"该文本中不存在敏感词:{modified_input}")任务实现元组不可变特性元组不可变性
元组创建方式元组具有不可变性,创建后无法修改元素,确保数据安全性和稳元组可通过小括号或tuple()函数创建,存储不同类型数据且允许定性。重复项。010203元组有序性元组是有序序列,支持索引和切片访问元素,保持数据排列顺序不变。在Python中,可以通过圆括号“()”来创建一个元组,示例代码如下:#创建一个空元组empty_tuple=()print("空元组:",empty_tuple)#创建一个含有多个元素的元组fruits_tuple
=("apple","banana","cherry")print("
水果元组:",fruits_tuple)#单元素元组需要加逗号single_element_tuple=(42,)print("单元素元组:",single_element_tuple)创建元组(1)通过索引来访问元组中的元素#访问元组中的元素first_fruit=fruits(O)second_fruit
=fruits(1)print("第一个水果:",first_fruit)#输
出
:appleprint("
第二个水果:",second_fruit)#
输
出
:banana(2)使用for遍历元组#遍历元组中的元素for
fruit
in
fruits:print("
水果:",fruit)访问元组元素在公司年终晚会上,组织一次随机抽奖活动。所有员工的姓名和对应的工号将被记录,我们将从中随机抽取获奖者。为了确保每个员工只参与一次
抽奖,并且输出结果时保持简洁,我们将使用元组来管理抽奖数据。任务描述首先,需要进行数据准备,创建一组包含员工姓名及其工号的数据,并且
要保证每位员工的记录是唯一的,没有重复。接下来进入抽奖过程,使用
元组列表来存储这些员工信息。然后,系统会从中随机选取预定数量的员
工作为获奖者。最后,程序会将抽选出的获奖员工的姓名和工号信息输出,以此完成整个抽奖流程。任务分析步骤1:数据准备import
random#员工姓名和工号的初始列表employees_data=[('Alice','E001'),('Bob','E002'),('Charlie','E003'),('David','E004'),('Eva','E005'),('Frank','E006'),('George','E007')]步骤2:抽奖过程#随机选择3名获奖者num_winners
=3winners=random.sample(employees_data,min(num_winners,len(employees_data)))任务实现步骤3:继续输出抽奖结果的部分#输出抽奖结果print("抽奖结果:")for
winner
in
winners:name,emp_id=winner#
解包元组print(f"获奖者姓名:{name},
工号:{emp_id}")任务实现特
性
(Characteristics)·唯一性
(Uniqueness):
自动去除重复元
素。·无序性
(Unordered)
:被索引受到访问。·
可变性
(Mutable):您可添加(.add())
或
捌除(.remove())
元素。实战案例:学生成绩去重将含有重复记录的列表转换为集合,实现快速去重。student_data=[("Alice",95),("Bob",88),("Alice",95)]unique_students=set
(student_data)#unique_students
is
now{("ALice",95),("Bob",88)}forname,score
inunique_students:print(f"{name}:{score}")元素无序且唯一[1,2,2,3,4,3]set()
{1,2,3,4}集合的特性集合的常见操作集合提供了多种操作来管理其元素,包括添加、删除、清空以及集合
间的数学运算。(1)向集合中添加元素可以使用add()方法向集合中添加单个元素。(2)删除集合中的元素可以使用remove()方法删除指定元素,如果元素不存在,会引发KeyError。使
用
discard()方法同样可以删除元素,但如果元素不存在,不会引发错误。(3)清空集合可以使用clear()方法清空集合中的所有元素。08任务4-3数据打包和解包在
Python
中,数据打包和解包是一种常用的操作。我们将使用集合和元组这两种组合数据类型,进行一项简单的任务:将一组学生的姓名和成绩
进行打包,并随后进行解包以便于处理和输出。任务描述首先,需要进行数据准备,即手动创建包含学生姓名及其对应成绩的数据
,作为程序的初始输入。接着进入打包过程,将每位学生的姓名和成绩组
合成一个元组,然后为了确保学生记录的唯一性,将这些元组存储到一个集合中。随后是解包过程,程序会从集合中逐个取出学生元组,并将每个元组解包还原为单独的姓名和成绩。最后,程序会将解包得到的学生姓名和成绩信息输出,完成整个数据处理流程。任务分析步骤1:数据准备#学生姓名和成绩的初始列表(包含重复项)students_data
=[('Alice',85),('Bob',90),('Charlie',78),('Alice',85),('David',88),('Eva',92),('Bob',90)]步骤2:数据打包并去重#利用集合去重并打包数据students_set
=set(students_data)任务实现步骤3:输出打包后的数据#输出打包的数据print("
打包后的数据(去重后集合):")
print(students_set)步骤4:解包数据并输出信息#解包并输出结果for
student
in
students_set:name,score=student#解包元组print(f"学生姓名:{name},
成绩:{score}")口
口口
口任务实现步骤3:转换为小写#将用户输入转为小写,以保证匹配时不区分大小写
user_input_lower
=user_input.lower()步骤4:初始化变量#用于存储检测到的敏感词found_words=[]#用于存储修改后的句子,初始为原始输入句子
modified_input
=user_input任务实现print(user["name"])#Directaccessprint(user.get("email","NotProvided"))#Safe
access字典基础操作user
={"name":"Alice","id":101}user["id"]=102
#Modifyuser["city"]="NewYork"#Adduser.pop("city")#Removebykeylast_item=user.popitem()
#Removelast
inserted
item键值对存储与创建
元素访问与修改删除(Delete)元组具有不可变性和有序性,通过索引访问元素,创建后无法修改其内容。集合支持添加、删除、清空元素等操作,通过add()
添加元素,remove()删除元
素
,clear()清空集合。字典通过键访问值,支持快速查找、插入和删除,可用pop()按键删除元素,
popitem
(删除最后一项。列表支持动态增减和修改元素,添加元素常用append()、extend()、insert(),删除元素可通过del
、remove()
、pop
(等方法实现。集合元素操作字典元素增删改查元组元素访问列表元素增删改查元素增删改查在公司中,我们需要根据员工的月薪数据,计算并列出薪资最高的前五名员工名单。为了有效地管理和处理这些数据,我们将使用Python
的字典
和集合来存储员工的信息,并且利用集合特性实现去重(如果有重复薪资
)。最终我们要输出这五名员工的姓名及其对应的薪资。任务描述首先进行数据准备,需要创建包含员工姓名和对应月薪的数据,这里允许存在相同的薪资数值。接着进入数据处理阶段,使用字典来存储员工信息,以确保每位员工的信息是唯一的。为了分析薪资情况,需要提取字典中的所有薪资值,并利用集合进行去重,从而获得不同的薪资等级。尽管如
此,我们的主要目标是找出薪资最高的员工,因此更关键的步骤是对全体员工按照薪资进行排序,并从中选出薪资最高的前五名员工。最后,在输出结果环节,程序会将这五名薪资最高的员工的姓名和对应的薪资打印出来。任务分析步骤1:数据准备#员工姓名和月薪的初始字典(可能包含重复薪资记录)employees_data={'Alice':5000,'Bob':7000,'Charlie':6000,'David':8000,'Eva':7000,'Frank':9500,'Grace':4500,'Hannah':8000,'Ivy':9500}步骤2:数据处理#利用集合去重并提取薪资数据salaries_set
=set(employees_data.values())口
口口
口任务实现步骤3:找到薪资最高的前五名员工#根据薪资进行排序,降序排列,并结合姓名与薪资组成元组sorted_employees=sorted(employees_data.items(),key=lambdax:x[1],reverse=True)#获取薪资最高的前五名员工top_5_employees
=sorted_employees[:5]任务实现步骤4:输出结果#
输出Top5薪资员工名单print("公司月薪Top
5名单:")foremployeeintop_5_employees:name,salary
=employee
#解包元组
print(f"姓名:{name},
月薪:{salary}")任务实现11技能拓展:利用大模型生成代码请你利用AI
大模型平台设计一个任务管理系统操作界面,该操作界面包括
任务列表、添加任务、编辑任务和删除任务等功能。(可以用豆包、DeepSeek、文心一言、Kimi
等AI大模型平台实现)下面以利用字节跳动旗下AI大模型平台豆包为例,演示利用大模型平台生成代码并运行的全过程。技能拓展:利用大模型生成代码步骤1:进入豆包官网打开浏览器输入网址https://www.doubao.com/chat/
进入豆包官网。你好,我是豆包。我可以如何帮到你?技能拓展:利用大模型生成代码体验更多>A
股逾2800份业绩预告
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度黑河市市委书记进校园引才446人备考题库附答案
- 2026中国联通甘孜州分公司招聘笔试备考试题及答案解析
- 2025年齐齐哈尔市国有资本投资运营有限公司出资企业招聘工作人员5人(公共基础知识)综合能力测试题附答案
- 2026广东佛山市顺德区伦教周君令初级中学招聘临聘教师笔试参考题库及答案解析
- 2025广东河源市连平县工业园管理委员会招聘编外人员2人备考题库附答案
- 2025广东广州市荔湾区西村街道公益性岗位招聘1人备考题库附答案
- 2025广东河源连平县政务数据服务中心招聘就业见习人员2人(公共基础知识)综合能力测试题附答案
- 2026云南大理州剑川县文化和旅游局招聘2人笔试参考题库及答案解析
- 2026重庆两江鱼复智选假日酒店劳务派遣岗位(客房服务员、前台接待、总账会计)招聘1人笔试备考试题及答案解析
- 2026天津中医药大学第一批招聘58人(博士)笔试备考题库及答案解析
- 模拟智能交通信号灯课件
- 合肥市轨道交通集团有限公司招聘笔试题库及答案2025
- 《智慧水电厂建设技术规范》
- 2.3《河流与湖泊》学案(第2课时)
- 工地临建合同(标准版)
- GB/T 46275-2025中餐评价规范
- 2025至2030供水产业行业项目调研及市场前景预测评估报告
- 2025年6月大学英语四级阅读试题及答案
- 神经内外科会诊转诊协作规范
- 高中诗歌手法鉴赏考试题
- 2025年及未来5年中国幽门螺杆菌药物行业市场调查研究及发展战略规划报告
评论
0/150
提交评论