这或许是对小白最友好的python入门了吧——18,用while循环处理列表

for循环可以遍历列表字典,但是想要用for循环在遍历的时候对其进行修改就很困难了,这个时候可以用while循环。

exams = ["chinese","math","python"]
doneexams = []

创建两个列表,一个是我们需要考的科目exams,另外一个是已经考完的科目的列表。我们要一个个的把exams的元素移动到doneexams中,应该怎么办呢?

exams = ["chinese","math","python"]
doneexams = []
while exams:
	doneexam = exams.pop()
	doneexams.append(doneexam)
print(exams)
print(doneexams)

前边我们说过,pop()这个函数就是删除列表最后一个元素但是依旧在函数中保存这个元素。append()这个函数是在列表末尾加一个元素。

我们的while函数运行到pop这个函数不能再运行,也就是运行到exams这个列表被全部删除。

以前我们说过,remove这个函数可以移除列表中指定元素,可是有的时候给定我们的列表可能差强人意,如有重复元素:

删除没有重复的元素完全没有问题,可是如果删除有重复的元素:

只会删除第一个。

想要删除全部的math可以用while循环:

exams = ["chinese","math","python","math"]
while "math" in exams:
	exams.remove("math")
print(exams)

原文发布于微信公众号 - TungHsu(gh_cd21b89e52e6)

原文发表时间:2018-01-24

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏linux驱动个人学习

contain_of宏定义

 Container_of在Linux内核中是一个常用的宏,用于从包含在某个结构中的指针获得结构本身的指针,通俗地讲就是通过结构体变量中某个成员的首地址进而获得...

3044
来自专栏软件开发 -- 分享 互助 成长

C++ 字符串分割

    java和C#中字符串都可以使用split进行分割,但是C++中却没有这个方法,之前总是自己写一个函数自己进行分割,倒也不麻烦,今天在网上找了类似的函数...

1806
来自专栏陈树义

6.Java集合总结系列:常见集合类的使用(List/Set/Map)

MARK 总结: Set、List 和 Map 可以看做集合的三大类。 List集合是有序集合,集合中的元素可以重复,访问集合中的元素可以根据元素的索引来访问。...

3385
来自专栏星回的实验室

js重修课[一]:数据类型

js的数据类型分为两类:原始类型(primitive)和对象类型(object type)。原始类型包括null、undefined、数字、字符串、布尔型。

922
来自专栏王磊的博客

es6分享——变量的解构赋值

变量的解构赋值:ES6 允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构(Destructuring)。 以前的写法: var a = 1;...

2657
来自专栏软件开发 -- 分享 互助 成长

常量字符串和指针

为了节省内存,C++把常量字符串单独放在一个内存区域,如果有几个指针指向相同的常量字符串时,它们实际上指向的是相同的内存地址。 而数组是要每一个数组单独占用一块...

1895
来自专栏xingoo, 一个梦想做发明家的程序员

Oracle基础知识-SQL简单命令

SQL语句包括两个部分:1 DDL 数据定义语言 2 DML 数据控制语言 DDL: create:创建一个表 create table b( clob cha...

1788
来自专栏数据处理

gbk,utf-8,unicode编码转换

1143
来自专栏vue

委托初级篇——委托三步曲

652
来自专栏Python、Flask、Django

python for循环如何遍历多个数组 和 遍历list(列表)

1375

扫码关注云+社区