ifyouli001 发表于 2022-11-16 08:40:48

求解 这两个代码有什么不同?

第18课的内容 模拟7天打卡程序
------------------------------------------------------------------
初始天数=0
while 初始天数<7:
    初始天数=初始天数+1
    用户输入=input("今天有好好学习吗?")
    if 用户输入!= "有":      
      break
else:
    print("非常棒,你已经坚持",初始天数)
---------------------------------------------------------------------
初始天数=0
while 初始天数<7:
    初始天数=初始天数+1
    用户输入=input("今天有好好学习吗?")
    if 用户输入!= "有":      
      break

    print("非常棒,你已经坚持",初始天数)
---------------------------------------------------------------------------

我试了一下 这两个代码加else:和不加运行效果完全一样,为了避免学岔了 所以求解释一下

suchocolate 发表于 2022-11-16 08:48:34

不一样
第一个是完成7天后才打印: 非常棒,你已经坚持 7
第二个是每天都会打印:非常棒,你已经坚持 N

循环的基础:https://www.runoob.com/python3/python3-loop.html
另外既然学编程,变量就不要用中文。

天边一抹灬红 发表于 2022-11-16 08:51:13

没啥区别

dragov 发表于 2022-11-16 08:54:27



有 else 的程序:当 while 内的语句都正常循环执行完,才会执行 else 中的 print

无 else 的程序:while 中的语句每循环一次,都要执行一次 else 中的 print

嘉岳呀 发表于 2022-11-16 09:09:54

第一个是 while 执行完才会 print

第二个每 while 一次就会执行 print

ifyouli001 发表于 2022-11-16 09:14:49

suchocolate 发表于 2022-11-16 08:48
不一样
第一个是完成7天后才打印: 非常棒,你已经坚持 7
第二个是每天都会打印:非常棒,你已经坚持 N


感谢!奈何英语不好 用英文变量名怕搞错 我也没办法呀{:10_266:}

wp231957 发表于 2022-11-17 11:52:05

ifyouli001 发表于 2022-11-16 09:14
感谢!奈何英语不好 用英文变量名怕搞错 我也没办法呀

中文不好
比如你这里的初始天数在开始时,比较合适
可是运行到后面时,还叫初始天数,你会发现,有些不和场景

ifyouli001 发表于 2022-11-20 09:53:31

wp231957 发表于 2022-11-17 11:52
中文不好
比如你这里的初始天数在开始时,比较合适
可是运行到后面时,还叫初始天数,你会发现,有些不 ...

好的谢谢 尽量改过来{:10_266:}
页: [1]
查看完整版本: 求解 这两个代码有什么不同?