??????? 重复执行的代码1
??????? 重复执行的代码2
??????? ……..
字符串 = '你好世界'
列表 = ['孙悟空','猪八戒','沙和尚','白龙马']
元组 = ('孙悟空','猪八戒','沙和尚','白龙马')
代码如下:
a = ['孙悟空','猪八戒','沙和尚','白龙马']
for i in a:
print(i)
孙悟空
猪八戒
沙和尚
白龙马
字符串 = '猪牛羊虫菜果'
for 临时变量 in 字符串:
?????? ?if? 临时变量 == '虫':
? ????????print('真恶心,不吃了')
? ????????break
??print(临时变量)
字符串 = '猪牛羊虫菜果'
for 临时变量 in 字符串:
?????? ?if? 临时变量 == '虫':
????????? print('真恶心,不吃了')
? ????????continue
?print(临时变量)
代码如下:
a = '猪牛羊虫菜果'
for i in a:
if i == '虫':
print('真恶心,不吃了')
break
print(i)
猪
牛
羊
真恶心,不吃了
for i in a:
if i == '虫':
print('真恶心,不吃了')
continue
print(i)
猪
牛
羊
真恶心,不吃了
菜
果
for 临时变量 in 序列:
??????? 重复执行的代码
??????? ……..
else:
??????? 循环正常结束之后要执行的代码
break 终止循环,循环并没有正常结束
countinue退出本次循环,执行下一次循环,循环是可以正常结束的
代码如下:
a ='猪牛羊虫菜果'
for i in a:
if i == '虫':
print('真恶心,不吃了')
continue
print(i)
else:
print('程序正常结束')
猪
牛
羊
真恶心,不吃了
菜
果
程序正常结束
enumerate( ) 用于将一个可遍历的数据对象(如列表,元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在for循环中。
语法: enumerate( 可遍历的对象,start = 0 )
注意:start参数?用来设置遍历数据的下标的起始值,默认为0。
列表名 = ['孙悟空','猪八戒','沙和尚','白龙马','唐僧']
for 变量名 in enumerate(列表名) :
??????? print(变量名)
for 下标,数据? in enumerate(列表名) :
??????? print(f'下标是{下标},对应的数据是{数据}')
代码如下:
a = ['孙悟空','猪八戒','沙和尚','白龙马','唐僧']
for i in enumerate(a):
print(i)
(0, '孙悟空')
(1, '猪八戒')
(2, '沙和尚')
(3, '白龙马')
(4, '唐僧')
for i in enumerate(a,1):
print(i)
(1, '孙悟空')
(2, '猪八戒')
(3, '沙和尚')
(4, '白龙马')
(5, '唐僧')
for i,j in enumerate(a,1):
print(f'下标事{i},对应的数据是{j}')
下标事1,对应的数据是孙悟空
下标事2,对应的数据是猪八戒
下标事3,对应的数据是沙和尚
下标事4,对应的数据是白龙马
下标事5,对应的数据是唐僧
什么是推导式:就是简化代码的(如果你不会,你的代码写的多一些,如果你学会了,你的代码写的少一些?)
创建一个由0-10组成的列表
列表名 = [ ]?? # 创建一个空列表
for 变量名 in range(0,11):
??????? 列表名.append(变量名)
print(列表名)
1,创建[0,2,4,6,8,10]
方法一:复习一下range步长的方式
列表名 = [ 变量名 for 变量名 in range(0,11,2) ]
2,带if(条件语句)的列表推导式
方法二:使用条件语句实现
列表名 = [ 变量名 for 变量名 in range(0,11) if 变量名 % 2 ==0 ]
代码如下:
b = [i for i in range(0,11)]
print(b)
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
c = [i for i in range(0,11,2)]
print(c)
[0, 2, 4, 6, 8, 10]
d = [i for i in range(0,11) if i&2 == 0]
print(d)
[0, 1, 4, 5, 8, 9]
字典推导式 【作用:快速合并列表为字典或提取字典中目标数据】
将两个列表快速合并成一个字典:
列表1 = [ '华为' , '小米' , '苹果' ,' 三星' ]
列表2 = [ 520 , 520 , 14 , 24 ]
字典名 = { 列表1[变量名]:列表2[变量名] for 变量名 in range(len(列表1)) }
提取字典中的目标数据:
字典名 = { '华为' : 520, '小米' : 520, '苹果' : 14,'三星' : 24 }
# 提取销售数量大于100台的字典数据
新字典名 = { 键:值? for? 键,值? in 字典名.items( ) if? 值 >= 100 }
print(新字典名)
代码如下:
a = [ '华为' , '小米' , '苹果' ,' 三星' ]
b = [ 520 , 520 , 14 , 24 ]
c = {a[i]:b[i] for i in range(len(a))}
print(c)
{'华为': 520, '小米': 520, '苹果': 14, ' 三星': 24}
len(a)
4
range(0,4)
range(0, 4)
a = { '华为' : 520, '小米' : 520, '苹果' : 14,'三星' : 24 }
b = {i:j for i,j in a.items() if j>100}
print(b)
{'华为': 520, '小米': 520}
推导式有什么用?简化代码
常用推导式:列表推导式和字典推导式
[ xx for xx in range( ) ]??????? # 列表推导式
{ xx1 : xx2 for … in… }???????? # 字典推导式
{ xx for xx in … }????????????????? # 集合推导式(不常用,现阶段知道有这么一回事就可以了)
?