Python学习笔记15(1)-----循环语句 New!
记得给个好评鼓励一下哦QWQ我们来看一下如果用 while 循环 怎么写:
i = 0
while i < 3:
print(i)
i = i + 1
https://s1.ax1x.com/2020/08/02/aJGnkn.jpg
从上图可以看出,while 循环由 循环条件 和 循环体 两部分组成。
当然,我们不会傻傻地把循环条件写成 True(除非有意而为之,后面会介绍),更多的是因为粗心写错了,导致 循环条件 永远为 True。比如:
i = 0
while i < 3:
print(i)
# 此处我们不小心漏掉了 i = i + 1
上面的例子中因为漏掉了 i = i + 1,导致 i 的值一直为 0,一直满足 i < 3 的循环条件。这就导致了我们的程序进入了 死循环!
死循环 其实是一件很可怕的事情,它使我们的程序不受控制,永无止境地做着无意义的循环。这会造成后续代码无法执行,甚至会导致 CPU 占用过高电脑死机等情况。
编写 while 循环时需要遵循一定的规范,切记:
循环条件后要有英文冒号;
循环体前要有统一的缩进;
要控制好循环条件,避免写出死循环。
如果生活里遇到死循环,也可以按下 Ctrl + C 跳脱出来就好了
https://s1.ax1x.com/2020/08/02/aJ0qUS.jpg
拓展:遍历 在计算机中指沿着某条路线,依次对序列中每个元素均做一次且仅做一次访问。
for i in :
i += 1
print(i)
字符串、列表、元组等都属于 序列。我们来看几个例子对比一下:
# 列表是序列
for i in ['扇', '贝', '编', '程']:
print(i)
# 逐行输出:扇 贝 编 程
# 元组也是序列
for i in ('扇', '贝', '编', '程'):
print(i)
# 逐行输出:扇 贝 编 程
# 字符串是一串字符的序列,也属于序列
for i in '扇贝编程':
print(i)
# 逐行输出:扇 贝 编 程
# 整数不是序列
for i in 123:
print(i)
# 报错:TypeError: 'int' object is not iterable
循环体内的代码可以只进行简单的运算,也可以复杂地进行各种判断、数据处理等,具体逻辑完全根据我们的需求定制。我们甚至还可以在循环中嵌套循环,比如下面这个打印“九九乘法表”的例子,看看你能理解吗?
for i in range(1, 10):
for j in range(1, i + 1):
# \t 是制表符,用来对齐。end 默认是 \n,打印后会换行,end='' 可以防止换行
print(str(j) + '×' + str(i) + '=' + str(i * j) + '\t', end='')
# 打印完一行后换行
print('')
# 输出:
# 1×1=1
# 1×2=2 2×2=4
# 1×3=3 2×3=6 3×3=9
# 1×4=4 2×4=8 3×4=124×4=16
# 1×5=5 2×5=103×5=154×5=205×5=25
# 1×6=6 2×6=123×6=184×6=245×6=306×6=36
# 1×7=7 2×7=143×7=214×7=285×7=356×7=427×7=49
# 1×8=8 2×8=163×8=244×8=325×8=406×8=487×8=568×8=64
# 1×9=9 2×9=183×9=274×9=365×9=456×9=547×9=638×9=729×9=81
未完待续~
学习了。 有时候需要死循环 缩进四个空格,哪来的两个空格? 蹭运气 蹭一蹭 战神貔貅 发表于 2020-8-5 16:01
蹭一蹭
订阅一下好不好啦https://fishc.com.cn/forum.php?mod=collection&action=view&ctid=1811 想顺便问一下,python的单双引号没有区别吗 太棒啦{:10_257:}
还有while ture之类得嘞 dan维 发表于 2020-8-14 21:26
想顺便问一下,python的单双引号没有区别吗
嗯 是一样的 dan维 发表于 2020-8-14 21:26
想顺便问一下,python的单双引号没有区别吗
就是不要混着用哦 极品召唤兽 发表于 2020-8-15 10:48
就是不要混着用哦
好的,谢谢喽 打印完一行后会换行是end执行结果吗,还有就是乘法表中俩式子之间的空格是怎么出来的,求解
想起来了,,,for i in range就是加空格,,, 大执法官 发表于 2020-8-16 09:41
想起来了,,,for i in range就是加空格,,,
???
我没看懂你的意思能具体说说吗
上面那个问题回答 :
Print 后面要是啥也没有 就是默认换行符
要是注明了end =空
就是防止换行
i = 5
j = 5
print(str(j) + '×' + str(i) + '=' + str(i * j) + '\t', end='')
print(666)
i = 5
j = 5
print(str(j) + '×' + str(i) + '=' + str(i * j) + '\t')
print(666)
你把这两个代码运行一下就能看出来区别了 极品召唤兽 发表于 2020-8-16 20:44
???
我没看懂你的意思能具体说说吗
谢谢解惑 大执法官 发表于 2020-8-17 09:09
谢谢解惑
额..你那个加空格是啥意思?? 极品召唤兽 发表于 2020-8-17 21:00
额..你那个加空格是啥意思??
就是两个式子中间的空格,,不是for i in range循环语句插入的吗
页:
[1]