python while循環(9)

通過昨天的學習,相信你們已經對python的條件判斷表達式if/else有必定的瞭解了,那麼咱們今天配合昨天的課程講解一個新概念 – while循環 。python

都說程序源於生活,假若有這樣一個場景:老師要求算出1~100之間全部數字的累計求和(槓精說:5050,我百度一下就知道)。git

深藏不露

那換個數字,你給我算出1~9977之間全部的數字累計求和,你再去百度試一試?github

槓精:給我等着,兜裏掏出計算器,papapa,一頓狂按…..5050+100+101+102+103…微信

如何實現

 

一.while循環語法:


1ide

2學習

while 判斷條件:spa

    執行語句……code


二.while循環示例:


1orm

2blog

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

# !usr/bin/env python

# -*- coding:utf-8 _*-

"""

@Author:何以解憂

@Blog(我的博客地址): shuopython.com

@WeChat Official Account(微信公衆號):猿說python

@Github:www.github.com

@File:while循環.py

@Time:2019/9/19 21:22

 

@Motto:不積跬步無以致千里,不積小流無以成江海,程序人生的精彩須要堅持不懈地積累!

"""

 

a = 1

while a < 10: # 當 a >= 10 時,條件不成立

    print(a)

    a += 2  # 等價 a = a + 2

輸出:1 3 5 7 9,下面是詳細執行流程

whil循環

分析下上面代碼:while 以後是條件表達式,若是爲真,會繼續執行while內的代碼,執行完全部while內的代碼又從新回到第二行,檢查 a < 10 是否成立,當a <10 條件不成立時,跳出while循環,因爲循環以外沒有任何代碼,直接退出程序。

看完上面代碼,咱們來一塊兒完成文章開始的問題,1~9977之間全部的數字累計求和,代碼以下:

1

2

3

4

5

6

7

8

9

10

11

a = 1

sum = 0

while a < 9977:

    # 當a >= 9977 時條件不成立,跳出循環,

    # a 的值每次加1,若是要 >= 9977 ,意味着要循環 9977 次

    # print(a)

    a += 1   # 等價 a = a + 1,a的值每次累計加 1

    sum += a # 等價 sum = sum + a

 

print("while循環一共執行了 %d 次" % a)  # a 的值每次加1 ,

print("1~99777之間全部的數字累計求和的結果是:{}".format(sum))

輸出結果:

1

2

while循環一共執行了 9977

1~9977之間全部的數字累計求和的結果是:49775252

 

三.while死循環

文章看到這裏,可能有些小夥伴就有想法了,要是我條件始終成立,始終爲True呢~

笑容

恭喜你,程序卡死了,退不出來了,好比下面代碼:

1

2

while True:

    print("程序啥時候結束就啥時候去吃飯")

輸出結果:

1

2

3

4

5

6

程序啥時候結束就啥時候去吃飯

程序啥時候結束就啥時候去吃飯

程序啥時候結束就啥時候去吃飯

程序啥時候結束就啥時候去吃飯

程序啥時候結束就啥時候去吃飯

.........(無限循環,直到海枯石爛,直到天荒地老,直到你禿頂)

餓死了

如何解決上面死循環問題,咱們留到下一篇文章繼續講解,傳送門:python教程 – 關於循環中使用break/continue

 

四.重點總結

while循環是python開發中必不可少的,其實使用也比較簡單,須要緊緊掌握。

 

猜你喜歡:

1.python運算符

2.關於循環中使用break/continue

 

轉載請註明:猿說Python » python while

相關文章
相關標籤/搜索