缩进几个字符好?
- 上次 研究了range函数
- 根据range函数的结果
- 生成了for循环
- 可以输出
- 从start
- 到end - 1
- 所有的数字
- 想要 循环输出
- 必须得缩进吗?
for num in range(ord('A'), ord('Z')+1):
print(num,chr(num))
- 不缩进会如何呢?🤔
编写程序
- 编写一个indent.py
vi indent.py
- 我要看看所有的字符
- range(0, 123)
- 从 0 开始
- 到 ord("z") 结束
for num in range(0, 123):
print(num)
- 按"+P将代码粘贴
:w|!python3 %
- 保存并运行当前文件
再看代码
- 第 1 行
- 使用了for循环
- 循环变量为num
- 让 num 从 0 到 123
挨个
循环
for num in range(0, 123):
print(num)
- 第 2 行
- 是 第一句for循环的 循环体
- 需要缩进到里面
- 归for语句统领
- 每次循环的过程中
- 输出n这个数字
- 第2行 非 缩进不可 吗?
不
缩进 能怎么着
??😠
缩进问题
- 尝试把第二行的缩进去掉
for num in range(0, 123):
print(num)
- 运行结果
- 程序出现了
Indentation
Error
- 这是继 NameError、TypeError之后的
- 又一种新的 Error类型
提问
- 拿报错信息问问ai
- 缩进必须得有!
- 缩进说明
- 本行是 for循环的 循环体
- 归for语句管
- 只 缩进
一
个字符
- 可以吗?🤔
缩进数量
- 按i进入插入模式
- 退格修改代码
- 只 缩进
一
个空格
for num in range(0, 123):
print(num)
- 这个程序可以运行吗?🤔
运行
- esc
- 退出插入模式
- :⬆️enter
- 找到之前的底行命令
- 可以运行
修改缩进数量
- 按i进入插入模式
- 缩进增加到
八个
空格
for num in range(0, 123):
print(num)
- 缩进一个和八个
- 都可以正确运行
- 缩进几个字符
合适
呢?
问问ai
- ai 说最好四个空格
- 我想到了一个按键
移动位置
- 先用u键
- 把程序 恢复回来
- 将 光标移动到 第二行第一个字符
- 按i进入插入模式
- 使用键盘中的Tab
- 缩进刚好
4
字符
- 再按Tab
- 又缩进
4
字符
- Tab是什么意思呢?
TAB
- TAB键来自于table
- 意思是制表符
- 具体写作\t
- 来自table
- 有文件明确要求
- python 需要缩进
4个
空格吗?
对齐
- python 有个规范PEP8
- 明确要求
4个
字符进行缩进- 要保证对齐
书写风格
- 我们按照这种书写风格
- 写python
- 四个字符
四个字符
- 1个Tab
- 对应 4个空格
- 是 python缩进的 标准
- Tab之后
- 光标位于
- 第2行,第5个字符
- esc
- 退出插入模式
- 准备运行
运行结果
- :w|!python3 %
- 执行底行命令
- 保存
- 并 用python3 运行当前程序
- 可以拖动侧面滚动条
- 翻看输出结果
- 从0到122都输出了一遍
- 为什么range(0,123)
- 只输出 到122 来着?
查询帮助
- 从 底行命令模式
- 直接!python3
- 进入游乐场
- 查询 range函数 的帮助
帮助内容
- 起始位置 start
- 默认值为 0
- 可以省略
- 结尾部分 stop
- exclusive
- 不包括
- q
- 退出帮助
- quit()
- 退出游乐场
- Enter回车
- 回到vim
修改代码
for num in range(123):
print(num)
- 运行结果
- 序号范围 已经ok
- 可以把
- 序号和对应字符
- 都输出吗?
修改代码
for num in range(123):
print(num, chr(num),sep=":")
- 运行结果
- 大写和小写字母之间
- 夹杂着 一些标点
编码规律
- 键盘上能输入的字符
- 除 大小写字母 之外
- 还有 标点 和 数字
- 这些字符应该
都
有序号- ordinal
字符全排列
- 统计数量
- 大小写各26
- 数字10
- 各种符号 40个左右
- 26 * 2 + 10 + 40
- = 102
- 找来找去也没有找到
- 竖线符号(|)?
总结
- 这次 输出了
- 从0到122 序号 对应的所有字符
for num in range(123):
print(num, chr(num),sep=":")
- 字符类型包括
- 数字
- 大小写字母
- 符号
- 但是 找不到 竖线符号(|)
- 这个竖线 在
哪里
呢??🤔