在Python中,集合(set)是一种无序且不包含重复元素的数据结构。集合对象由一组大括号 或 函数创建,但请注意,大括号 在没有元素的情况下会创建一个空字典,而不是空集合。因此,当你想创建一个空集合时,应该使用 set()
函数而不是 set
{}
集合的特点
- 无序:集合中的元素没有特定的顺序。
- 无重复元素:集合中的元素是唯一的,不允许有重复。
- 可变:集合的大小和内容在创建之后可以修改。
- 可迭代:可以使用循环结构遍历集合中的元素。
(偷偷神清气爽一下)
交集:去两个集合公共的元素 | &/intersection |
并集:取两集合全部元素 | I/union |
差集:取一个集合中另一个集合没有的元素 | -/difference |
a = {1,2,3,4}
b = {3,4,5,6}
print(a&b)
print(a.intersection(b))
print(b&a)
print(b.intersection(a))
print(a|b)
print(a.union(b))
print(b|a)
print(b.union(a))
print(a-b)
print(a.difference(b))
print(b-a)
print(b.difference(a))
运行结果eg:输出不同两个班级重名的学生的姓名
num1 = int(input("请输入班级1学生的数量:"))
class1 = set()#初始化集合class1
#通过循环,输入班级1的姓名
for i in range(0,num1):
name = input("输入学生%d姓名:"%(i+1))
class1.add(name)
num2 = int(input("请输入班级2学生的数量:"))
class2 = set()#初始化集合class2
#通过循环,输入班级2的姓名
for i in range(0,num2):
name = input("输入学生%d姓名:"%(i+1))
class2.add(name)
same = class1 & class2
print("重名的学生:")
for name in same:
print(name)
运行结果