for 变量 in 序列:	
  操作语句
                  
                
              
- 
                  序列:接收序列,表示遍历范围。无默认值
 - 
                  操作语句:接收操作语句,表示执行一段代码。无默认值
 
- 
                  代码清单1:for语句遍历提取str
 
                  
                    # 单纯遍历的for语句	
names = ['Michael', 'Bob', 'Tracy']	
# 遍历输出names中的元素	
for name in names:	
    print(name)
                  
                
              
                  
                    Michael	
Bob	
Tracy
                  
                
              
- 
                  代码清单2:for语句遍历查询dict
 
                  
                    dic = {'a': 1, 'b': 2, 'c': 3, 'd': 4}	
# 遍历键值对	
print('key_value:', end = '')	
for key, value in dic.items():	
    print(key, value, sep = ':', end = ' ')	
# 遍历键	
print('keys:', end = '')	
for key in dic.keys():	
    print(key, end = ' ')	
# 遍历值	
print('values:', end = '')	
for value in dic.values():	
    print(value, end = ' ')
                  
                
              
                  
                    key_value:a:1 b:2 c:3 d:4	
keys:a b c d	
values:1 2 3 4
                  
                
              
- 
                  代码清单3:嵌套for语句
 
                  
                    students = ['小明', '小红']	
subjects = ['语文', '数学'] 	
sum1 = []	
avg = []	
for i in students: 	
    print ('开始录入%s的考试成绩!'%i) 	
    sum = 0	
    for j in subjects: 	
        print('请输入%s成绩:'%j) 	
        score = int(input())	
        sum += score	
    average = sum / 2	
    avg.append(average)	
    sum1.append(sum)	
print(students, '的总分依次是', sum1, ',', '平均分依次是', avg)	
print('完成成绩录入!')
                  
                
              
                  
                    开始录入小明的考试成绩!	
请输入语文成绩:	
97	
请输入数学成绩:	
90	
开始录入小红的考试成绩!	
请输入语文成绩:	
89	
请输入数学成绩:	
100	
['小明', '小红'] 的总分依次是 [187, 189] , 平均分依次是 [93.5, 94.5]	
完成成绩录入!
                  
                
              
                  
                    while 条件表达式:	
    操作语句 1	
    操作语句 2 
                  
                
              
- 
                  条件表达式:接收布尔表达式,表示判断条件是否成立。无默认值
 - 
                  操作语句:接收操作语句,表示执行一段代码。无默认值
 
- 
                  代码清单4:while语句
 
                  
                    sum = 0	
n = 99	
while n > 0:	
    sum += n	
    n -= 2	
print(sum)
                  
                
              
- 
                  代码清单5:while语句无限循环
 
                  
                    # 布尔表达式为常数1,始终为真值	
while 1:	
     print('循环')
                  
                
              
                  
                    循环	
循环	
…
                  
                
              
                  
                    # 布尔表达式每次递归运算都为2,始终为真值	
x, y = 2, 1	
while x / y:	
    print('循环')	
    x = x * 2	
    y = y * 2
                  
                
              
                  
                    循环	
循环	
…
                  
                
              
- 
                  代码清单6:while语句实现str截取
 
                  
                    string = 'abcd'	
while string:	
    print(string)	
# 该语句的递归计算是,每次从str的第2个字符开始截取	
    string = string[1:]
                  
                
              
                  
                    abcd	
bcd	
cd	
d
                  
                
              
- 
                  代码清单7:嵌套while语句
 
                  
                    j = 1	
while j <= 2:	
    sum = 0	
    i = 1	
    name = input('请输入学生姓名:')	
    while i <= 2:	
        print ('请输入第%d门的考试成绩: '%i)	
        sum += int(input())	
        i += 1	
    avg = sum / (i-1)	
    print(name, '的平均成绩是%d'%avg)	
    j += 1	
print('学生成绩输入完成!')
                  
                
              
                  
                    请输入学生姓名:小明	
请输入第1门的考试成绩: 	
98	
请输入第2门的考试成绩: 	
88	
小明 的平均成绩是93	
请输入学生姓名:小红	
请输入第1门的考试成绩: 	
65	
请输入第2门的考试成绩: 	
100	
小红 的平均成绩是82	
学生成绩输入完成!
                  
                
              
- 
                  代码清单8:break语句的使用
 
                  
                    # break语句用于for循环	
string = "Python"	
for i in string:	
# 遍历至string中的字符n时,不再执行else代码块	
    if i == 'n':	
        break	
    else:	
        print("letter:{}". format(i))
                  
                
              
                  
                    letter:P	
letter:y	
letter:t	
letter:h	
letter:o
                  
                
              
                  
                    # break语句用于while循环	
counts = 0	
while True:	
    print(counts)	
    counts += 1	
# 满足counts等于3时跳出循环,不再进入循环体	
    if counts == 3: 	
        break
                  
                
              
                  
                    0	
1	
2
                  
                
              
- 
                  代码清单9:break语句用于嵌套循环结构
 
                  
                    # 第1层循环,遍历次数为2	
for i in range(2):	
    print("-----%d-----" %i)	
# 第2层循环,遍历次数为10	
    for j in range(10):	
# 使用break语句,j>1时不执行循环体	
        if j > 1:	
            break	
        print(j)
                  
                
              
                  
                    -----0-----	
0	
1	
-----1-----	
0	
1
                  
                
              
- 
                  代码清单10:continue语句用于循环结构
 
                  
                    # 当i等于1或3时,跳过continue后的print语句	
for i in range(0,5):	
    if i == 1 or i == 3:	
        continue	
    print(i)
                  
                
              
                  
                    0	
2	
4
                  
                
              
                  
                    # 如果遇到偶数,跳过continue后的print语句	
counts = 0	
while counts < 10:	
    counts += 1	
    if counts % 2 == 0:	
        continue 	
    print(counts)
                  
                
              
                  
                    1	
3	
5	
7	
9 
                  
                
              
- 
                  代码清单11:continue语句用于嵌套循环结构
 
                  
                    # 第1层循环,遍历次数为2	
for i in range(2):	
    print("-----%d-----" %i)	
# 第2层循环,遍历次数为5	
    for j in range(5):	
# 当j等于2或4时,不执行循环体	
        if j == 2 or j == 4:	
            continue	
        print(j)
                  
                
              
                  
                    -----0-----	
0	
1	
3	
-----1-----	
0	
1	
3
                  
                
              
- 
                  代码清单12:pass语句
 
                  
                    for element in "Python":	
# element为y时,不做任何操作,不会被输出	
    if element == "y":	
        pass	
    else:	
        print(element)
                  
                
              
                  
                    P	
t	
h	
o	
n
                  
                
              
                  
                    counts = 0	
while counts < 5:	
    counts += 1	
# i=3时,不执行循环体	
    if counts == 3:	
        pass	
    else:	
        print(counts ** 2)
                  
                
              
                  
                    1	
4	
16	
25 
                  
                
              
                  
                
              
                  
                    [操作语句 for变量 in 序列 if 条件表达式]    
                  
                
              
- 
                  操作语句:接收操作语句,表示执行一段代码。无默认值
 - 
                  序列:接收序列,表示遍历范围。无默认值
 - 
                  条件表达式:接收布尔表达式,表示判断条件是否成立。无默认值
 
- 
                  代码清单13:使用列表推导式生成list
 
                  
                    vec = [-4, -2, 0, 2, 4]	
# 用vec中元素的倍数,创建一个数组	
print([x * 2 for x in vec])
                  
                
              
                  
                
              
                  
                    [-8, -4, 0, 4, 8]
                  
                
              
                  
                    # 创建一个包含2元tuple的list	
print([(x, x ** 2) for x in range(6)])    
                  
                
              
                  
                
              
                  
                    [(0, 0), (1, 1), (2, 4), (3, 9), (4, 16), (5, 25)]    
                  
                
              
- 
                  代码清单14:包含条件语句的列表推导式
 
                  
                    # 过滤list,删除list中的负数	
print([x for x in vec if x >= 0])
                  
                
              
                  
                
              
                  
                    [0, 2, 4]
                  
                
              
- 
                  代码清单15:常规方式与列表推导式对比
 
                  
                    # 创建一个平方数list:常规方式	
squares = [] 	
for x in range(10): 	
    squares.append(x ** 2) 	
print(squares)
                  
                
              
                  
                
              
                  
                    [0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
                  
                
              
                  
                    # 创建一个平方数list列表推导式	
squares = [x ** 2 for x in range(10)] 	
print(squares)  
                  
                
              
                  
                
              
- 
                  代码清单16: 包含嵌套循环的列表推导式
 
                  
                
              
                  
                
              
                  
                    [(0, 0), (0, 1), (0, 2), (1, 0), (1, 1), (1, 2), (2, 0), (2, 1), (2, 2)]
                  
                
              
                  
                    # 打印由tuple组成的list,i在0至2之间且小于1,j在0至2之间且大于1	
[(i, j) for i in range(0, 3) if i < 1 for j in range(0, 3) if j > 1]
                  
                
              
                  
                
              
                  
                    [(0, 2)]
                  
                
              
(*本文为AI科技大本营转载文章, 转载 请 联系作者 )
◆
精彩推荐
◆
                
                  
                    推荐阅读
                  
                
                
              
              - 
                  
dfuse、慢雾科技、MYKEY共同出席,与你探讨区块链数据架构和项目上链那些事!
 - 
                  
大数据工程师手册:全面系统的掌握必备知识与工具
 - 
                  
演讲实录:知乎算法团队负责人孙付伟:Graph Embedding在知乎的应用实践
 - 
                  
NASNet:神经架构搜索网络在图像分类中的表现
 - 
                  
实操 | 从0到1教你用Python来爬取整站天气网
 - 
                  
5大必知的图算法,附Python代码实现
 - 
                  
我们到底该如何看待6G?
 - 
                  
互联网大佬为什么爱唱歌
 - 
                  
惊呆!这辆悍马自己在跑跑跑跑跑跑跑!
 

