【Python学习】第三天:字典、集合、集合运算(评论区里写作业)
文章目录
字典
字典是另一种可变容器模型,且可存储任意类型对象。字典的每个键值 key:value 对用冒号 : 分割,每个键值对之间用逗号 , 分割,整个字典包括在花括号 {} 中。
映射:元素之间相互对应的关系
创建字典
# 方式1:{}
container = {}
# 方式2:dict()
container1 = dict()
添加键值对
# 往字典添加键值对
container[key] = value
# 创建字典
price = dict()
# 往字典中添加键值对
price['苹果'] = 5
price['香蕉'] = 10
price['桃子'] = 6
print(price)
if '苹果' in price:
print('苹果的价格为:%d 元' %(price['苹果']))
if '梨' in price:
print('梨的价格为:%d 元' %(price['梨']))
else:
print('没有梨这个水果')
计算购买水果的价格
# 定字典价格
price = dict({'苹果':5, '香蕉':10, '桃子':6})
print(price)
# 输入购买水果的种类数量,存储到变量n中
n = int(input('请输入购买水果的种类数量:'))
# 定义价格
sum_price = 0
for i in range(0,n):
fruit = input('输入购买的水果%d的名称:' %(i + 1))
num = int(input('输入购买的水果%d的数量:' %(i + 1)))
# 如果输入的水果在price字典中
if fruit in price:
sum_price += price[fruit] * num
else:
print('没有%s这个水果' %(fruit))
# 输出总价
print('总价格为:%d 元' %(sum_price))
集合
python当中的内置数据结构,是一个无序的集,用来保存不重复的元素,和字典类型。集合中相邻元素之间用逗号分隔。
集合只能存储基础数据类型,如整型、浮点型、字符串和元组
,不能存储可变数据类型,如列表、字典和集合。
创建集合
a = set() # 创建空集合必须用set
b = {1,2,'abc'}
集合转换
# 字符串
a = 'abcdefg'
strSet = set(a)
print('字符串转集合:',strSet)
# 元组
b = ('a','b','c','d','e','f','g')
tupleSet = set(b)
print('元组转集合:',tupleSet)
# 列表
c = ['a','b','c','d','e','f','g']
listSet = set(c)
print('列表转集合:',listSet)
# 字典
d = {'a':1,'b':2,'c':3,'d':4,'e':5,'f':6,'g':7}
dictSet = set(d) # 取key,忽略value
print('字典转集合:',dictSet)
添加集合
# 添加\删除集合里的元素
a = set()
a.add('a')
a.add('b')
a.remove('a')
print(a)
集合运算
# 集合运算
a = {1,2,3,4}
b = {3,4,5,6}
# 交集
print('交集:',a & b)
print('交集:',a.intersection(b))
# 并集
print('并集:',a | b)
print('并集:',a.union(b))
# 差集
print('差集:',a - b)
print('差集:',a.difference(b))
print('差集:',b - a)
print('差集:',b.difference(a))
求两个班重名学生
num1 = int(input('班1人数:'))
class1 = set()
for i in range(num1):
name = input('班1学生姓名:')
class1.add(name)
num2 = int(input('班2人数:'))
class2 = set()
for i in range(num2):
name = input('班2学生姓名:')
class2.add(name)
print('班1和班2的重名学生:',class1 & class2)
作业一:假设已知小明、小红、小亮三个同学的语文、数学、英语成绩,如何使用python字典将姓名、学科、成绩作对应,并计算谁的总分最高?
作业二:俩班级,求在班级二出现班级一没有出现的名字
原文地址:https://blog.csdn.net/weixin_46318413/article/details/140627480
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!