欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

python基础之集合

程序员文章站 2023-12-29 00:00:22
# set 不支持索引和切片,是一个无需的不重复得到容器# 类似于字典,但是只有key 没有value# 创建集合dic1={}set1={1,2,3}print(type(set1))print(t...

python基础之集合

python基础之集合

# set 不支持索引和切片,是一个无需的不重复得到容器
# 类似于字典,但是只有key 没有value
# 创建集合
dic1={}
set1={1,2,3}
print(type(set1))
print(type(dic1))

python基础之集合

dic1={}
set1={1,2,3}
print(type(set1))
print(type(dic1))
set1.add('python')  #添加数据
print(set1)
# 清空操作
set1.clear()
print(set1)

python基础之集合

python基础之集合

set1={1,2,3}
set2={2,3,4}
# difference 两个集合的差集
print(set1.difference(set2))

python基础之集合

python基础之集合

set1={1,2,3}
set2={2,3,4}
# 并集操作
print(set1.intersection(set2))  #打印两部分相交的部分

python基础之集合

python基础之集合

set1={1,2,3}
set2={2,3,4}
# 并集操作
print(set1.union(set2))

python基础之集合

python基础之集合

pop 移除数据并删除,相当于栈中的操作,排序并移除栈顶元素
set2={2,3,4}
set2.pop()
print(set2)

python基础之集合

python基础之集合

python基础之集合

python基础之集合

python基础之集合

# update需要两个集合,在原来的基础之上进行更新
set1.update(set2)
print(set1)

python基础之集合

总结

python基础之集合

作业:

# 求三组连续自然数的和,求出1到10、20到30、35到45的三个和
def qiuhe(n,m):
    result=0
    for item in range(n,m+1):
        result+=item
        pass
    return result
    pass
sum1=qiuhe(10,20)
sum2=qiuhe(1,10)
sum3=qiuhe(35,45)
print('输出1到10的和:%d'%sum1)
print('输出20到30的和:%d'%sum2)
print('输出35到45的和:%d'%sum3)

python基础之集合

100个和尚吃100个馒头,大和尚一人吃3个馒头,小和尚三人吃一个馒头,请问大小和尚各多少人
def hscount():
    '''
    计算有多少个和尚
    假设大和尚a 小和尚就是100-a
    :return:
    '''
    for a in range(1,100):
        if a*3+(100-a)*(1/3)==100:
            return (a,100-a)
    pass
rsobj=hscount()
print('大和尚人数{},小和尚人数{}'.format(rsobj[0],rsobj[1]))

python基础之集合

# 指定一个列表,列表中含有唯一一个只出现过一次的数字,写程序找出这个独一无二的数字

list1=[1,2,3,4,5,6,7,8,2,3,4,5,6,7,8]
set1=set(list1)  #转为集合,去除重复
# print(set1)
for i in set1:
    list1.remove(i)
    pass
set2=set(list1)
print(set1.difference(set2))

python基础之集合

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注的更多内容!

上一篇:

下一篇: