自己制作的ascii码表_循环语句_条件语句_缩进_indent 回忆上次内容
-
上次了解了
-
print函数中的另一个参数
-
结束符 end
-
默认是 换行符\n
-
可以输出ascii码表吗??🤔
上次代码
-
将end参数
-
设置为逗号(,)
for num in range(128): print(num, end = ",")
-
range(128)
-
循环范围是[0,128)
-
前闭后开
-
128 刚好是
-
从0 到 27
-
7-bit
准备战斗
-
ctrl + d
-
从 游乐场
-
退回到vim
vi ascii.py
-
用vi 编辑ascii.py
输出字符
-
不光要输出序号
-
而且要输出字符
for num in range(128): print(num, chr(num), sep=":", end=",")
-
对于128以内的每一个num
-
输出数字和所对应的字符
-
分隔符用冒号
-
结束符用逗号
-
都堆到一起了
-
看不清
制表符\t for num in range(128): print(num, chr(num), sep=":", end="\t")
-
将结束符
-
改成'\t'
-
'\t' 是制表符
-
table
效果
-
分开了
-
但是换行位置
-
有点瑕疵
-
希望 逢八换行
-
怎么保证 逢八换行 呢?
认识取余运算
-
回到游乐场
:!python3
-
%符号是取余运算符
15 % 8 16 % 8 17 % 8
-
15 除 8 余 7
-
16 除 8 余 0
-
17 除 8 余 1
对于余数判断
-
余数为零吗?
15 % 8 == 0 16 % 8 == 0 17 % 8 == 0
-
True为真
-
False为假
条件语句
-
如果 num 能 被8整除
-
就输出 换行
-
print()
for num in range(0, 128): if num % 8 == 0: print() print(num, chr(num), sep=":", end="\t") 执行结果
-
逢八应该只输出换行
-
字符本该每轮都输出的
-
现在也都逢八才输出了
for num in range(0, 128): if num % 8 == 0: print() print(num, chr(num), sep=":", end="\t")
-
条件if不该控制输出字符
-
让最后一句往前走
-
不归if控制
控制结构 for num in range(0, 128): if num % 8 == 0: print() print(num, chr(num), sep=":", end="\t")
-
逢八只输出换行
理解结构
-
第2、3、4行
-
都是 第1行 for的 循环体
-
从属于 第1行
-
每个字符序号 都得循环
-
注意if语句
-
归 for循环管
-
属于 循环体的一部分
-
缩进在 for循环的 范围内
if语句
-
if语句结尾处
-
要有一个冒号(:)
-
意味着 下面缩进的
-
都归if管
-
都是 if语句的 条件体
-
if 的条件是
-
num % 8 == 0
-
意思是 num 除8余0 时
-
才执行 if 对应的条件体
-
if对应的条件体 是
-
print()
-
相当于 print(end="\n")
-
虽然没有输出任何字符
-
但是有回车换行的效果
-
if条件满足时
-
只输出换行
-
换行这句
-
需要进行更深层的缩进
-
2个tab
-
才能让print()这句话
-
归 if语句 管着
运行结果
-
很像ascii
-
可以只输出 字符
-
不输出 序号 吗?
结果 for num in range(0, 128): if num % 8 == 0: print() print(chr(num), end="\t")
-
结果
黑暗丛林
-
上面 黑了一大片
-
好像黑暗丛林
-
林子看起来很神秘
-
黑暗区域 很危险
-
以后来探索一番
总结
-
这次做出了ascii码表
-
通过 控制缩进 完成
-
循环结构
-
条件结构
-
循环变量 num
-
序号 不断增大
-
字符 不断变化
-
python 如何表示
-
现实生活中的 变化 呢??🤔
-
我们下次再说👋
• 蓝桥->https://www.lanqiao.cn/courses/3584 • github->https://github.com/overmind1980/oeasy-python-tutorial • gitee->https://gitee.com/overmind1980/oeasypython