Python for、while循环、集合——第五天

1、为什么要用循环?

循环是为了防止代码冗杂,减少做重复的事情

2、循环分类及区别

(1)while循环:

i = 1

while i <= 5:
    print(i)
    i+=1
#输出结果:
1
2
3
4
5

(2)for循环:

for i in range(10):
    if i <= 5:
        continue
    print("test:",i)

#输出结果:
test: 6
test: 7
test: 8
test: 9

(3)while死循环:

i = 1

while i <= 5:
    print(i)
 
#输出结果:
1
1
1
1
1
...

(4)for循环和while循环的区别
while循环之前,先判断一次,如果满足条件的话,再循环,for循环的时候必须有一个可迭代的对象,才能循环.

1、集合特点:
(1)由不同元素组成
(2)无序
(3)集合中元素必须是不可变类型

2、集合的创建

s=set("hello")

#输出为:h e l o 

说明: set方法相当于for循环遍历,且去掉重复的,只想做简单的去重操作,而不考虑元素索引位置的改变可以用集合来实现。

3、集合的魔法

(1)add()——魔法:添加集合,只能添加一个值
(2)clear()——魔法:清空集合
(3)update()——魔法:更新多个值,可以更新元组,列表,将原集合覆盖
(4)copy()——魔法:拷贝集合
(5)pop()——魔法:删除随机集合
(6)remove(x)——魔法:删除指定x,若x不存在,则会报错
(7)discard()——魔法:删除指定,但是不会报错
(8)两集合的交集::s1 & s2 = s1.intersection(s2)
(9)两集合的并集: s1 | s2 = s1.union(s2)
(10)两集合的差集:s1 - s2 = s1.difference(s2)
存在谁不存在谁,就用谁减谁
(11)两集合的交叉补集:(并集抠出相同的部分)
s1.symmertric_difference(s2) = s1 ^ s2
(12)判断两集合是否没有交集:s1.isdisjoint(s2),没有交集未True
(13)判断s1是否是s2的子集:s1.issubset(s2) 相当于s1 <= s2
(14)判断s1是否是s2的父集:s1.issupper(s2) 相当于s1 >= s2
(15)集合是可变类型,但是可以创建不可变集合用 frozenset()
4、应用实际
求两个列表中共有的部分
(1)不用集合方法:需要进行for循环

list1=[1,3,4,5,6]
list2=[2,3,4]

for i in list1:
    if i in list2:
        print(i)
        
#输出结果:
3
4

(2)用集合:转换成集合,直接求交集

list1=[1,3,4,5,6]
list2=[2,3,4]

s1=set(list1)
s2=set(list2)
s=s1&s2
print(s)

#输出结果:
3
4
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值