我想用while循环遍历一个集合,我设计的程序如下:
我的预想是:
当new_set的集合元素没有达到与my_set相同,从my_set中取元素添加到new_set中,同时输出该元素,直到new_set的元素与my_set一样了停止,以此完成遍历。
结果是:
只取出来3个,呜呜呜,为什么会这样?
于是我重新修改代码:
结果:
多了一个而已,脑壳都要想破了!😭
后来我才知道:
原来在new_set添加元素过程中,my_set也会减少,别不是从my_set中复制粘贴过来,而是直接拿走了。看样子我想法是好的,只不过忘记了这个知识点😭
因此可以发现上图中的:
为什么只输出3个了,因为:
两集合元素个数相同了。
至于:
那是因为两集合元素相同是,还可以循环一次,所以也就有了:
于是,我又重新设计了一个while循环遍历集合my_set的程序:
结果:
耶✌!成功遍历my_set集合的元素!
不过,可以发现my_set变空集了,它的元素全部转移到了new_set了。
来对比一下for循环的遍历:
可以发现for循环后并没有对my_set集合产生影响。
综上我们可以发现,集合遍历for循环更好用。