当前位置: 首页 > news >正文

Python之元组、字典和集合练习

1、餐厅下午茶 (列表与元组 crr66)

某餐厅推出了优惠下午茶套餐活动。顾客可以以优惠的价格从给定的糕点和给定的饮
料中各选一款组成套餐。已知,指定的糕点包括松饼(Muffins)、提拉米苏(Tiramisu)、芝士蛋
糕(Cheese Cake)和三明治(Sandwich);指定的饮料包括红茶(Black tea,)、咖啡(Coffee)和橙汁
(Orange Juice)。请问,可以搭配出哪些套餐供客户选择?请依次打印输出各种套餐。

menu = ['Muffins', 'Tiramisu', 'Cheese Cake', 'Sandwich']
drinks = ['Black tea', 'Coffee', 'Orange Juice']#遍历所有的组合
for cake in menu:for drink in drinks:print(f"{cake}+{drink}")Muffins+Black tea
Muffins+Coffee
Muffins+Orange Juice
Tiramisu+Black tea
Tiramisu+Coffee
Tiramisu+Orange Juice
Cheese Cake+Black tea
Cheese Cake+Coffee
Cheese Cake+Orange Juice
Sandwich+Black tea
Sandwich+Coffee
Sandwich+Orange Juice

2、生成 1000 个 0~100 之间的随机整数,采用集合统计每个元素的出现次数

import random
from collections import Counter
number=[random.randint(0,100) for x  in range(1000)]
print(Counter(number))Counter({58: 19, 71: 19, 37: 18, 41: 17, 25: 17, 62: 16, 49: 16, 43: 15, 54: 15, 8: 14, 55: 14, 97: 14, 15: 14, 9: 13, 50: 13, 42: 13, 46: 13, 45: 13, 100: 13, 84: 13, 2: 12, 70: 12, 74: 12, 47: 12, 27: 12, 60: 12, 73: 12, 53: 12, 96: 11, 12: 11, 83: 11, 95: 11, 24: 11, 65: 11, 99: 11, 56: 10, 77: 10, 10: 10, 63: 10, 14: 10, 19: 10, 13: 10, 52: 10, 18: 10, 66: 10, 44: 10, 31: 10, 57: 10, 20: 9, 16: 9, 21: 9, 11: 9, 30: 9, 22: 9, 29: 9, 75: 9, 39: 9, 34: 9, 36: 9, 5: 9, 26: 9, 81: 9, 33: 9, 32: 9, 89: 9, 67: 8, 86: 8, 48: 8, 68: 8, 94: 8, 82: 8, 23: 8, 35: 8, 7: 8, 72: 8, 17: 8, 64: 8, 3: 8, 1: 8, 69: 8, 28: 7, 79: 7, 78: 7, 90: 7, 85: 7, 88: 7, 92: 7, 0: 7, 6: 7, 87: 7, 76: 6, 80: 6, 38: 6, 91: 6, 40: 6, 98: 5, 4: 5, 93: 5, 51: 4, 59: 3, 61: 3})

3、输入两个分别包含若干整数的列表 lstA 和 lstB,输出一个字典,要求使用列表 lstA 中的元素作为键,列表 lstB 中元素作为值,并且最终字典中的元素数量取决于 lstA 和 lstB 中元素最少的列表的数量。

def create_dict(lista,listb):return dict(zip(lista,listb))lista=[1,2,3,4,5]
listb=['a','b','c','d','e']
print(create_dict(lista,listb)){1: 'a', 2: 'b', 3: 'c', 4: 'd', 5: 'e'}

4、输入一个字符串,输出其中出现次数最多的字符及其出现的次数。要求使用字典完成。

def find_most_frequent_char(s):# 创建一个空字典来存储字符及其出现的次数char_count = {}for char in s:if char in char_count:char_count[char] += 1else:char_count[char] = 1# 找到出现次数最多的字符及其出现的次数max_count = 0max_char = ''for char, count in char_count.items():if count > max_count:max_count = countmax_char = charreturn max_char, max_count# 测试代码
s = "hello world"
print(find_most_frequent_char(s))('l', 3)

5、籍贯分布(字典的整体操作 crr92)

dicGirls = {'Jiangsu': 3, 'Zhejiang': 2, 'Jilin': 1}
dicBoys = {'Jiangsu': 8, 'Zhejiang': 5, 'Shandong': 5, 'Anhui': 4, 'Fujian': 2}# 合并两人的调研结果
merged_dict = dicGirls.copy()
for key, value in dicBoys.items():if key in merged_dict:merged_dict[key] += valueelse:merged_dict[key] = value# 输出结果
print("男生籍贯分布:", merged_dict)
print("女生籍贯分布:", dicGirls)男生籍贯分布: {'Jiangsu': 11, 'Zhejiang': 7, 'Jilin': 1, 'Shandong': 5, 'Anhui': 4, 'Fujian': 2}
女生籍贯分布: {'Jiangsu': 3, 'Zhejiang': 2, 'Jilin': 1}
http://www.lryc.cn/news/191449.html

相关文章:

  • 【数据结构】归并排序和计数排序(排序的总结)
  • 某医疗机构:建立S-SDLC安全开发流程,保障医疗前沿科技应用高质量发展
  • 验证二叉搜索树的后序遍历序列
  • 第三章 内存管理 一、内存的基础知识
  • 【Java学习之道】Java常用集合框架
  • logicFlow 流程图编辑工具使用及开源地址
  • ATF(TF-A)/OPTEE之动态代码分析汇总
  • 10-11 周三 shell xargs tr curl 做大事情
  • 1.1 向量与线性组合
  • django: You may need to add ‘localhost‘ to ALLOWED_HOSTS
  • 网络安全(黑客技术)—自学手册
  • 【Vue】之Vuex的入门使用,取值,修改值,同异步请求处理---保姆级别教学
  • ubuntu20.04 nerf Instant-ngp (下) 复现,自建数据集,导出mesh
  • 【常见错误】SVN提交项目时,出现了这样的提示:“XXX“ is scheduled for addition, but is missing。
  • 深度学习基础知识 给模型的不同层 设置不同学习率
  • 【Python 零基础入门】 Numpy
  • 1600*C. Circle of Monsters(贪心)
  • 国外互联网巨头常用的项目管理工具揭秘
  • sql 注入(4), 盲注
  • 【string题解 C++】字符串相乘 | 翻转字符串III:翻转单词
  • CentOS 7下JumpServer安装及配置(超详细版)
  • 基于 ACK Fluid 的混合云优化数据访问(五):自动化跨区域中心数据分发
  • sentinel的启动与运行
  • 模拟量采集无线WiFi网络接口TCP Server, UDP, MQTT
  • 五、OSPF动态路由实验
  • 系统架构设计:16 论软件开发过程RUP及其应用
  • Gralloc ION DMABUF in Camera Display
  • 【LVS】lvs的四种模式的区别是什么?
  • Android原生实现控件点击弹起效果方案(API28及以上)
  • 【数据结构-队列 二】【单调队列】滑动窗口最大值