For循环和数据类型方法
-
while 循环补充说明
-
流程控制之for循环
-
while循环之死循环
- 真正的死循环一旦执行,cpu功耗会急剧上升
# 死循环 while True: i = 99 ** 99 print(i) -
while嵌套及全局标志位
- 注意: 一个break只能结束它所在的那一乘循环
- 注意:有几个while的嵌套,如果想一次性结束就应该写几个break
- 注意:如果不想反复的写break,可以使用全局标志位,就是在循环开始之初,定义一个变量为True,如果需要跳出while循环把这个变量赋值为False即可
is_flag = True # 这里定义一个全局标志位 while is_flag: # while的条件是如果is_flag = True就运行False就不运行 username = input('username>>>:') password = input('password>>>:') if username == 'jason' and password == '123': while is_flag: # 判断is_flag cmd = input('请输入您的指令>>>:') if cmd == 'q': # 这里判断我们输入的命令是什么,如果为q 直接将is_flag 从新赋值为False is_flag = False print('正在执行您的指令:%s' % cmd) else: print('用户名或密码错误') -
流程控制之for循环
- for循环和while循环一样,都可以做到同样的事情,但是for循环的写法会比while的写法简单
- 命名: 一般如果没有特定含义的数据可以使用,i,j,k,v,item 命名
- 特点:擅长遍历取值,不需要结束条件,自动结束
- 应用场景: 遍历对象的数据值
- 语法:
for 循环变量 in 被循环的对象: print(循环变量)
# 代码实例
name = [ 'jinke', 'wesley', 'kimi' ]
for i in name:
print(i)
jinke
wesley
kimi
# 如果使用while写则为下列这样
name = [ 'jinke', 'wesley', 'kimi' ]
count = 0
while count < 3:
print(name[count])
count += 1
> 在使用for遍历数据时需要注意,每种不同的数据类型,取值的样式都是不一样的,下列为代码实例
```python
# for 循环主要遍历的数据类型常见的有(字符串,列表,元组,字典,集合,整型)
# for循环之字符串循环
info = 'Hello world'
for i in info:
print(i)
"""
输出结果
H # 这里看到这里是按照数据类型的最小单位打印的,字符串就是单个字符
e
l
l
o
# 这里是空格,也算是字符串的单个字符
w
o
r
l
d
"""
# 这里需要比较注意的是字典,和取值的方式是一样的,只答应key
user_id = {'username': 'wesley', 'password': 123}
for i in user_id:
print(i)
"""
# 输出结果
username
password
"""
-
基本数据类型方法
之前说了很多的数据类型,那针对这些数据方法就会有很多关于数据操作的方法
- range()方法
# 定义: range方法可以理解为帮我们生产一个内部包含多个数字的数据
# 默认起始位置为0 终止位置为100,python默认左开右闭
for i in range(101):
# [0..100]
print(i)
# 第一个是起始位置,第二个是终止位置
for i in range(10, 20):
print(i)
# 第三个个数为等差值,也叫做步长,默认不写为1
for i in range(1, 20, 2)
print(i)
Python2 和Python3 的差别
"""
在python2中
range()
直接产生一个列表 内部含有多个数值
xrange()
其实就是python3里面的range
在python3中
range()
类似于一个工厂 不会占用太多的内存空间 要就生产
"""
# 联系题2
3.计算1-100所有的数之和
x = 0
for i in range(101):
x = x + i
print(x)
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]
# 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]
count_num = 0
for i in l1:
if i == 2:
count_num += 1
print(count_num)
3.编写代码自动生成所有页网址(注意总共多少页)
https://movie.douban.com/top250
"""
规律为每下一页start+=25
数据一共10叶
"""
base_url = 'https://movie.douban.com/top250?start=%s&filter='
num = 0
for i in range(11):
print(base_url % num)
num += 25
4.编写代码打印出下列图形(ps:for循环嵌套)
for i in range(4):
for y in range(5):
print('*', end='')
print()

浙公网安备 33010602011771号