hongkongdoll 麻豆 Python中的荟萃与字典:高效存储的数据结构
Python中的荟萃与字典:高效存储的数据结构嘿hongkongdoll 麻豆,小伙伴们!今天咱们要一都探索Python中的两个超等灵验的数据结构——荟萃(set)和字典(dictionary)。思象一下,你有一个装满多样物品的大箱子,荟萃就像是这个箱子里不近似的物品清单,而字典则像是一册详确的物品目次,不仅告诉你有什么,还告诉你每个物品的具体信息。是不是很兴味兴味呢?
荟萃:不近似的元素荟萃
韩国情色电影荟萃是Python中一种无序的、不近似的元素集。你不错把它思象成一个装满彩色球的袋子,每个球都是惟一无二的,莫得近似。荟萃的主要优点是粗略快速地进行元素查找和去重操作。
创建荟萃
创建荟萃相配毛糙,只需要使用大括号{}或者set()函数。
1python复制代码2# 使用大括号创建荟萃3 my_set = {1, 2, 3, 4, 5}4 print(my_set) # 输出:{1, 2, 3, 4, 5}56# 使用set()函数创建荟萃7 my_set2 = set([1, 2, 2, 3, 4, 4, 5])8 print(my_set2) # 输出:{1, 2, 3, 4, 5},驻防去除了近似元素
荟萃的操作
荟萃赞成许多灵验的操作,比如添加、删除、归并和交加等。
1python复制代码 2# 添加元素 3 my_set.add(6) 4 print(my_set) # 输出:{1, 2, 3, 4, 5, 6} 5 6# 删除元素 7 my_set.remove(3) 8 print(my_set) # 输出:{1, 2, 4, 5, 6} 910# 归并荟萃(并集)11 set1 = {1, 2, 3}12 set2 = {3, 4, 5}13 union_set = set1 | set2 # 或者使用set1.union(set2)14 print(union_set) # 输出:{1, 2, 3, 4, 5}1516# 交加17 intersection_set = set1 & set2 # 或者使用set1.intersection(set2)18 print(intersection_set) # 输出:{3}1920# 差集21 difference_set = set1 - set2 # 或者使用set1.difference(set2)22 print(difference_set) # 输出:{1, 2}
荟萃的利用场景
荟萃相配合适用于去重和判断元素是否存在。比如,你有一个包含无数近似数据的列表,思要快速去重,就不错使用荟萃。
1python复制代码2 data_list = [1, 2, 2, 3, 4, 4, 5, 5, 6]3 unique_data = set(data_list)4 print(unique_data) # 输出:{1, 2, 3, 4, 5, 6}
字典:键值对的矿藏箱
字典是Python中另一种相配雄伟的数据结构,它存储的是键值对(key-value pair)。你不错把它思象成一册详确的物品目次,每个物品都有一个唯一的标签(键),以及对应的详信托息(值)。
创建字典
创建字典不错使用大括号{},何况每个键值对之间用冒号:分隔,键值对之间用逗号,分隔。
1python复制代码2# 创建字典3 my_dict = {"name": "Alice", "age": 25, "city": "New York"}4 print(my_dict) # 输出:{'name': 'Alice', 'age': 25, 'city': 'New York'}
探望和修改字典
探望字典中的值相配毛糙,只需要使用键动作索引。
1python复制代码2# 探望字典中的值3 name = my_dict["name"]4 print(name) # 输出:Alice56# 修改字典中的值7 my_dict["age"] = 268 print(my_dict) # 输出:{'name': 'Alice', 'age': 26, 'city': 'New York'}
字典的治安
字典有许多灵验的治安,比如添加、删除、赢得键值对列表等。
1python复制代码 2# 添加键值对 3 my_dict["email"] = "alice@example.com" 4 print(my_dict) # 输出:{'name': 'Alice', 'age': 26, 'city': 'New York', 'email': 'alice@example.com'} 5 6# 删除键值对 7 del my_dict["city"] 8 print(my_dict) # 输出:{'name': 'Alice', 'age': 26, 'email': 'alice@example.com'} 910# 赢得统统键11 keys = my_dict.keys()12 print(keys) # 输出:dict_keys(['name', 'age', 'email'])1314# 赢得统统值15 values = my_dict.values()16 print(values) # 输出:dict_values(['Alice', 26, 'alice@example.com'])1718# 赢得键值对列表19 items = my_dict.items()20 print(items) # 输出:dict_items([('name', 'Alice'), ('age', 26), ('email', 'alice@example.com')])
字典的利用场景
字典相配合适用于存储和快速探望具有唯一标志的数据。比如,你不错用一个字典来存储一个班级统统学生的信息,每个学生的学号动作键,姓名、年岁、得益等信息动作值。
1python复制代码2 students = {3 "101": {"name": "John", "age": 20, "grade": "A"},4 "102": {"name": "Jane", "age": 22, "grade": "B"},5 "103": {"name": "Mike", "age": 21, "grade": "C"}6 }78# 探望学生信息9 print(students["101"]["name"]) # 输出:John
来源推论:荟萃与字典的概括利用
为了矜重咱们学到的学问,咱们不错来源作念一个小面孔:统计一段文本中每个单词出现的次数,何况找出出现次数最多的单词。
1python复制代码 2 def word_count(text): 3# 分词(这里毛糙使用split治安,本色利用中可能需要更复杂的分词器) 4 words = text.split() 5 6# 使用字典统计每个单词的出现次数 7 word_freq = {} 8 for word in words: 9 word = word.lower().strip('.,!?;:"()[]') # 调度为小写并去除标点记号10 if word in word_freq:11 word_freq[word] += 112 else:13 word_freq[word] = 11415# 找出出现次数最多的单词16 most_common_word = max(word_freq, key=word_freq.get)1718# 输出成果19 print("单词出现次数:")20 for word, freq in word_freq.items():21 print(f"{word}: {freq}")22 print(f"\n出现次数最多的单词是:{most_common_word},出现了{word_freq[most_common_word]}次。")2324# 测试文本25 sample_text = "Python is amazing! I love Python because it's so easy to learn and use. Python has many libraries fortext processing. I use Python every day."26 word_count(sample_text)27
当你运转这段代码时,它会输出每个单词的出现次数,何况告诉你出现次数最多的单词是什么。你不错尝试用我方的文本数据来测试这个功能,望望它能不可正确地统计出你思要的信息。
小结与饱读吹
恭喜你!你照旧学会了Python中的荟萃与字典这两种高效存储的数据结构。荟萃粗略匡助你快速去重和判断元素是否存在,而字典则粗略让你浅薄地存储和探望具有唯一标志的数据。记着,编程就像搭积木相似,每一个学问点都是一块积木,只须不休地聚积和推论,你才智搭建出属于我方的学问大厦。不要褊狭挑战我方,尝试用你学到的学问去处理本色问题。比如,你不错写一个要领来统计你最心爱的册本或电影中的对话次数,或者创建一个毛糙的通信录来锻真金不怕火字典的操作。每一次的推论都会让你愈加熟识和自信。终末,我思说的是hongkongdoll 麻豆,学习编程就像一场冒险,充满了未知和惊喜。保握对编程的青睐和兴趣心,不休地探索和学习,你一定粗略成为Python编程的众人! 加油!