取精华,去糟粕;重基础,促创新
一.for语句的一般语法
for是Python中另外一个循环语句,提供了Python中最强大的循环结构,它可以循环遍历任何序列项目,如一个列表或者一个字符串。(sequence可以是列表元组集合,如果是字典只能遍历keys,无法遍历values)
1.语法格式
for <variable> in <sequence>:
<statements>
else:
<statements>
2.示例
students=['jack','tom','john','amy','kim','sunny']
for item in students:#用item接收遍历的元素
print(item)
二.for循环中使用break和continue
可以用break退出当前循环,还可以用continue跳过后续循环代码,继续下一次循环
1.示例
students=['jack','tom','john','amy','kim','sunny']
for item in students:
if item=='amy':
print("break终止循环")
break
print(item)
2.pass语句
pass语句的使用表示不希望任何代码或者命令的执行;
pass语句是一个空操作,在执行的时候不会产生任何反应;
pass语句常出现在if、while、for等各种判断或者循环语句中;
三.range(函数)
Python中range()函数返回的是一个整数序列的对象,一般用在 for循环中。
1.函数语法
range(start,stop[, step])
2.参数说明:
start:计数从 start开始。默认是从 0开始。例如range(5)等价于range(0, 5);
end:计数到 end结束,但不包括 end。例如:range(0, 5) 是[0,1, 2, 3, 4]没有5
step:步长,默认为1。例如:range(0, 5) 等价于 range(0,5, 1)
3.示例:
>>>list(range(10)) # 从 0 开始到 10[0, 1, 2,3, 4,5, 6,7, 8,9]
>>>list(range(1,11))#从 1 开始到 11[1, 2, 3,4, 5,6, 7,8, 9,10]
>>>list(range(0, 30,5))#步长为5[0, 5, 10,15, 20,25]
>>>list(range(0, 10,3))#步长为3[0, 3, 6,9]
>>>list(range(-10,0,2))#负数[-10,-8, -6, -4, -2]
>>>list(range(0))
[]
>>>list(range(3,0))
[]
四.推导式
1.列表推导式
列表推导式:列表推导式(listcomprehension)是利用其它列表创建新列表的一种方式,工作原理类似for循环,即可对得到的元素进行转换变形,其基本格式如下(可以有多个for语句)
2.集合推导式
集合推导式:集合推导式跟列表推导式非常相似,唯一区别在于用{}代替[]。其基本格式如下:
3.嵌套列表推导式
names=[['Tom','Billy','Jefferson','Andrew','Wesley','Steven','Joe'],['Alice','Jill','Ana','Wendy','Jennifer','Sherry','Eva']]
#注意遍历顺序,这是实现的关键
bb=[name for lst in names for name in lst if name.count('e')>=2]
print(bb)
['Jefferson','Wesley', 'Steven', 'Jennifer']