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()
posted @ 2025-03-13 13:15  樵夫-  阅读(16)  评论(0)    收藏  举报