Day 11 - 基本语法6(回圈2)

昨天我们讲到的是for回圈,今天我们要讲到的也是回圈:while

正文

while 是什麽?

while 其实就跟英文字面上的意思没有太大的区别,也就是 当 的意思。

当有什麽条件达成时,那我们就做什麽事情,如果条件不成立了,那我们就不会继续我们给他做的指令。

举个例子:假设你跟你女朋友用名牌包换感情,那当你今天送她名牌包她就会爱你,但你明天没送的话就会去爱别人了,也不会回过头来找你(因为while过了就回圈跳出结束了)

不罗唆,上code:

var a = 0

while a < 10{
    a = a + 1
    print(a)
}

会一直加到10

a到10的时候会再跳回while 的条件式去做判断,但到这个地方时因为并没有小於10,所以这边就跳出回圈了。

其实while也可以做到for回圈的作用,只要加一个变数i让i从0跑到10,可以写是没有错,但有可能会有效率的问题。

这边所说的效率问题不是真的效率而是你大量做判断的时候可能会有些许影响,因为这边你做的只是很简单的判断,电脑秒回答你,但如果你计算的是天文数字,那情况可能就会差异很大。所以开发出一个专案看似简单容易,但殊不知背後有多少的调整简化。

加上前面所学的吧!

var a = 0

while a < 10001{
    for i in 1...10{
        a = a + 1
    }
    print(a)
}
print("Answer is",a)

这边我们设定a小於10001,但实际上输出大於10001,原因是最後一次运算就会超过了,但回去判断的时候过不了,程序就结束了!

总结

这几天学了回圈的概念,可能会很难理解,但多练习就会有相对理解这些到底是什麽意思。

明天我们来学习函式定义。


<<:  Day11 测试写起乃-FactoryBot-create、build、build_stubbed

>>:  (Day11) 物件参考特性

【没钱买ps,PyQt自己写】Day 2 - 利用 Qt designer 建立第一支有自己介面的 PyQt5 程序

看完这篇文章你会得到的成果图 这次是我初学 PyQt5 的一些笔记, 每天都学一点点,至於整理的部分...

Day 21. Zabbix 自动化通知介绍

首先在介绍自动化通知之前,需要介绍是如何被触发的。 触发器的设定也是跟着套用样板时候被设定。 具体可...

LeetCode解题 Day15

978. Longest Turbulent Subarray https://leetcode.c...

三种时间长短,让你简单培养习惯

昨天有点晚睡,睡前还很害怕会不会又失败持续的一天XD 但幸好还是有继续努力运动。 闹钟一响就起床,...

[Day17] Tableau 轻松学 - 美化仪表板外观

前言 仪表板同样也可以进行外观美化设定,这里要特别注意的是只能针对仪表板的样式做设定,而不能针对单一...