Python学习笔记

本文详细介绍了Python中的集合和字典数据结构。首先,解释了集合的基本概念,包括创建、访问、添加元素、集合运算等,并通过实例展示了如何找出两个班级中不同的人。接着,探讨了字典的构成,提供了字典的创建示例,并通过计算三名学生各科成绩总分来展示其用法。最后,比较了三名学生的总分以确定最高分。
摘要由CSDN通过智能技术生成


前言

本文涉及了Python集合的概念与使用、Python字典的概念与创建。


一、Python集合的概念与运用

1、集合是Python的内置数据结构,是一个无序的集,用来保存不重复的元素。

下图为集合的数据类型
集合包含的数据类型
2、集合的创建

a=set()
b={1,2,'abc'}
print(a)
print(b)

a是个空集合
3、集合的访问

jihe={1,2,3,4,5}
for item in jihe:
    print(item)

由于集合的无序性,集合不能被索引访问,可以使用遍历访问。

4、集合的添加

jihe={1,2,3,4,5}
jihe.add(6)
jihe.remove(1)
print(jihe)

在这里插入图片描述

使用add添加元素,使用remove删除元素

5、集合的运算

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))

6、集合的练习案例
项目内容:分别输入两个班级的人数及同学名字,通过代码编写找出在班级2中出现但不在班级1中出现的名字。

#输入班级1的学生人数储存在num1
num1=int(input("请输入班级1的学生人数:"))

class1=set()

for i in range(0,num1):
    name=input("输入学生%d姓名:"%(i+1))
    class1.add(name)

#输入班级2的学生人数储存在num1
num2=int(input("请输入班级2的学生人数:"))

class2=set()

for i in range(0,num2):
    name=input("输入学生%d姓名:"%(i+1))
    class2.add(name)

diff=class2-class1

print("班级2中出现而班级1中没有出现的学生:")
for name in diff:
    print(name)

实现效果:
在这里插入图片描述
需要注意的点为集合的遍历与运算。

二、Python字典的概念与创建

1、Python字典的概念

1、字典的语法格式
在这里插入图片描述

2.字典练习案例

项目内容:以及小明、小红、小亮的语文、数学、英语的三科成绩,使用python字典将姓名、学科、成绩做对应,并计算总分最高。
代码如下(示例):

ming={'语文':99,'数学':98,'外语':97}

for sub in ming:
    print("小明%s为%d"%(sub,ming[sub]))


hong={'语文':99,'数学':96,'外语':96}

for sub1 in ming:
    print("小红%s为%d"%(sub1,hong[sub1]))


liang={'语文':99,'数学':93,'外语':97}

for sub2 in ming:
    print("小亮%s为%d"%(sub2,liang[sub2]))

a=sum(ming.values())
b=sum(hong.values())
c=sum(liang.values())

print("小明的总分为%d"%(a))
print("小红的总分为%d"%(b))
print("小亮的总分为%d"%(c))


if a>b&a>c:
    print("小明的成绩最高,总分为:%d"%(a))

elif b>a&b>c:
    print("小红的成绩最高,总分为:%d"%(b))

elif c>b&c>a:
    print("小明的成绩最高,总分为:%d"%(c))
    

最终效果:
在这里插入图片描述
注意字典中的value的求和,如下图:
在这里插入图片描述

总结

本文进行了Python中的集合和字典的了解和使用。

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值