今日学习概要
- for循环
今日学习内容
-
for循环
-
for循环的结构
""" for 变量名 in 可迭代对象: for 循环的子代码 """ num_list = [1, 2, 3, 4] for i in num_list: # 每一次循环都依次拿出num_list中的一个数据值赋值给i print(i, end='') # 1 2 3 4,在数据全部拿出来后停止循环
-
字典取值
如果用for循环来循环字典,默认情况下只能取出字典的key
user_dict = {'name': 'duke', 'age': 19, 'gender': 'True'} for i in user_dict: print(i) # name age gender
-
字符串取值
使用for循环提取字符串 默认每次取到单个字符
string = 'hello word' for i in string: print(i)
-
range方法
range可以看做是一个帮我们快速生成一个包含多个数据值的列表
range的三种用法# 1.括号内填三个数字,分别代表开始数字,结束数字,间隔位数 for i in range(1, 11 , 2): # 遵循左闭右开原则 print(i) # 打印奇数 # 2.填写两个数字,代表开始和结束,间隔位数默认为1 for i in range(1, 11): print(i) # 从1到10依次打印 # 3.只填写一个数字,代表结束位置,开始位置默认为0 for i in range(11): print(i) # 从0打印到10
在python2中,有两个range,一个是range,还有一个是xrange
xrange就是python3中的range,而python2中的range在打印会直接产生一个列表,当数据量大时可能会导致内存溢出 -
break, continue, else
# 这三个关键字在使用上和while循环是一样的 for i in range(1, 11): if i == 5: # 循环到5时强制结束循环 break print(i) for i in range(1, 11): if i == 5: # 循环到5时跳过本轮循环,i获取下一个数据值 continue print(i) for i in range(1, 11): print(i) else: print('当for正常结束时打印, 强制结束不打印')
-
作业
"""1.计算1-100所有的数之和"""
num = 0
for i in range(1, 101):
num += i
print(num)
"""
2.判断列表中数字2出现的次数
l1 = [11,2,3,2,2,1,2,1,2,3,2,3,2,3,4,3,2,3,2,2,2,2,3,2]
"""
l1 = [11, 2, 3, 2, 2, 1, 2, 1, 2, 3, 2, 3, 2, 3, 4, 3, 2, 3, 2, 2, 2, 2, 3, 2]
new_dict = {}
for i in l1:
if i in new_dict:
new_dict[i] += 1
else:
new_dict[i] = 1
print(new_dict)
"""
3.编写代码自动生成所有页网址
https://movie.douban.com/top250
"""
all_url = 'https://movie.douban.com/top250?start=%s&filter='
for i in range(0, 226, 25):
print(all_url % i)
"""
4.编写代码打印出下列图形(ps:for循环嵌套)
*****
*****
*****
*****
"""
for n in range(4):
for i in range(5):
print('*', end='')
print('')
```"""1.计算1-100所有的数之和"""
num = 0
for i in range(1, 101):
num += i
print(num)
"""
2.判断列表中数字2出现的次数
l1 = [11,2,3,2,2,1,2,1,2,3,2,3,2,3,4,3,2,3,2,2,2,2,3,2]
"""
l1 = [11, 2, 3, 2, 2, 1, 2, 1, 2, 3, 2, 3, 2, 3, 4, 3, 2, 3, 2, 2, 2, 2, 3, 2]
new_dict = {}
for i in l1:
if i in new_dict:
new_dict[i] += 1
else:
new_dict[i] = 1
print(new_dict)
"""
3.编写代码自动生成所有页网址
https://movie.douban.com/top250
"""
all_url = 'https://movie.douban.com/top250?start=%s&filter='
for i in range(0, 226, 25):
print(all_url % i)
"""
4.编写代码打印出下列图形(ps:for循环嵌套)
*****
*****
*****
*****
"""
for n in range(4):
for i in range(5):
print('*', end='')
print('')