本文涉及了Python集合的概念与使用、Python字典的概念与创建。
1、集合是Python的内置数据结构,是一个无序的集,用来保存不重复的元素。
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字典将姓名、学科、成绩做对应,并计算总分最高。
代码如下(示例):
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))
本文进行了Python中的集合和字典的了解和使用。