Skip to content

Latest commit

 

History

History
208 lines (144 loc) · 3.39 KB

039-988983-for循环_循环遍历_循环变量.sy.md

File metadata and controls

208 lines (144 loc) · 3.39 KB
show version enable_checker
step
1.0
true

for循环_循环遍历_循环变量

回忆上次内容

  • 上次 了解了
    • 小写字母的 序号范围
    • 大写字母的 序号范围

图片描述

  • 接触了 range
    • 根据range函数的结果
    • 生成了for循环
  • range(start, stop)可以输出
    • 从start 到 stop
    • 所有的数字

图片描述

  • 为什么
    • 输出了 start
    • 有输出 stop 呢?🤔

问问ai

图片描述

  • 说了 又好像 没说

前闭后开

  • 进入游乐场
    • 问问python本人
help(range)
  • start的值
    • inclusive
    • 被包含在内
    • 回忆import
      • 导入、
      • in了

图片描述

  • stop的值
    • exclusive
    • 被排除在外
    • 回忆
      • export 导出
      • exit

结构

  • 整个结构为
    • [start,end)
    • 前闭后开
    • 要start 不要end

图片描述

  • 想要输出
    • 所有小写字母
  • 最大的序号
    • 多少呢?

遍历范围

  • 最大的序号
    • 是'z'的序号
    • 122

图片描述

  • 先把 从97到122
    • 所有序号
    • 遍历一遍
  • 应该怎么做呢?

重新写

  • 遍历从a到z的所有序号
    • 重写range范围
    • 从97
    • 到122
for num in range(97,122):
	print(num,chr(num))
  • 结果
    • 不到122
    • 没有z

图片描述

  • 该怎么改?

结尾位置

  • 结尾位置
    • 不包含stop
    • 所以要加1
    • 留出富余
for num in range(97,123):
	print(num,chr(num))
  • 运行成功

图片描述

  • 我想把97、123
    • 换成ord函数的结果
    • 应该怎么办?

通用

for num in range(ord(a),ord(z)):
	print(num,chr(num))
  • 报错了

图片描述

  • 错在哪?

NameError

  • NameError
    • a没有被定义
    • 不认识a
NameError:name 'a' is not defined
  • 怎么改?

修改

  • 我们要的是字符a
    • 必须用引号引起来
    • 'a'
for num in range(ord('a'), ord('z')+1):
	print(num,chr(num))
  • 后面还要留有富裕

图片描述

  • 如果要输出的是
    • 所有大写字母的对应关系呢?

修改

  • 试着
    • 把 小a 变成 大A
    • 把 小z 变成 大Z
for num in range(ord('A'), ord('Z')+1):
	print(num,chr(num))
  • 是时候总结了

总结

  • 这次 研究了range函数
    • 根据range函数的结果
    • 生成了for循环
  • 可以输出
    • 从start
    • 到end - 1
    • 所有的数字

图片描述

  • 想要 循环输出
    • 必须得缩进吗?
for num in range(ord('A'), ord('Z')+1):
	print(num,chr(num))
  • 不缩进会如何呢?🤔
  • 我们下次再说👋