農林漁牧網

您現在的位置是:首頁 > 漁業

python迴圈語句之while迴圈

2022-05-09由 小小知識屋 發表于 漁業

while語句如何構成死迴圈

3。2 迴圈結構

python迴圈語句之while迴圈

在現實的生活中,有許多的場景是不斷重複做一些事情。比如人的吃飯和睡覺就是最直觀的例子。在程式設計中如果想計算

1+2+3+……+n的值是多少,也就是計算機要重複不斷累加計算,就要用到迴圈語句,在Python中提供了兩種迴圈語句,分別是while迴圈和for迴圈。

3-2-1while迴圈

while迴圈是首先判斷迴圈條件,滿足條件則執行迴圈體語句,再判斷迴圈條件……。。一直到迴圈條件不滿足則執行迴圈體下面的語句。

使用格式為:

while 條件表示式:

條件為真執行迴圈體語句塊

請注意迴圈一般要有迴圈的終止條件,否則會進入死迴圈。只有在特殊的應用中會特別設定條件為

True來實現無限迴圈。

3-2-1-1 輸入下面的程式碼,分析產生的結果

【參考程式碼】

01

#程式設計實現:計算1+2+3+4+。。。。。+1000的和

02

#全部寫出來,但是不是太合理。都是重複的加的操作。

03

#迴圈:解決重複的操作過程

04

#第一個:while迴圈

05

‘’‘

06

迴圈前面的語句

(0)

07

while(判斷條件(1)):

08

——

滿足條件,執行迴圈語句。

(2)

09

迴圈後面的語句。

(3)

10

執行:

0-1(真)-2-1(真)-2-1(真)-2……1(假)-3

11

’‘’

12

i=

1

13

s=

0

14

while

(i<=

1000

):

15

——

s=s+i;

16

——

i=i+

1

17

print

“這是迴圈後面的語句。”

18

print

“1+2+3+。。。1000的和是:”

,s)

19

#迴圈需要注意的問題:迴圈在一般情況下,需要有迴圈終止的條件。

20

#如果沒有終止條件,會進入死迴圈。

21

#break語句:跳出迴圈,執行迴圈後面的語句

22

#程式設計實現:輸出我們的輸入,當輸入為“0”,跳出迴圈。

23

while

True

):

24

——

i=

input

()

25

——

print

(i)

26

——

if

i==

“0”

27

————

break

28

print

“迴圈後面的語句”

29

#程式設計實現:計算1+2+3+4+。。。。。+1000的奇數和與偶數和

30

#偶數:除以2,餘數為0。否則就是奇數。

31

i=

1

32

#奇數和

33

sodd=

0

34

#偶數和

35

seven=

0

36

while

(i<=

1000

):

37

——

if

i%

2

==

0

38

————

seven=seven+i

39

——

else

40

————

sodd=sodd+i

41

——

i=i+

1

42

print

“這是迴圈後面的語句。”

43

print

“1+2+3+。。。1000的奇數和是:”

,sodd)

44

print

“1+2+3+。。。1000的偶數和是:”

,seven)

45

print

“1+2+3+。。。1000的和是:”

,sodd+seven)

【執行結果】

這是迴圈後面的語句。

1+2+3+。。。1000的和是: 500500

123

123

abc

abc

迴圈後面的語句

這是迴圈後面的語句。

1+2+3+。。。1000的奇數和是: 250000

1+2+3+。。。1000的偶數和是: 250500

1+2+3+。。。1000的和是: 500500

3-2-1-2 輸入下面的程式碼,分析產生的結果

【參考程式碼】

01

#while迴圈的巢狀使用

02

# 程式設計實現:列印如下的星號(要求使用while實現)

03

‘’‘

04

**********

05

**********

06

**********

07

**********

08

**********

09

**********

10

**********

11

**********

12

’‘’

13

#while列印第一行

14

#i控制一行中字元的迴圈

15

i=

1

16

#j控制迴圈的行數

17

j=

1

18

while

(j<=

8

):

19

——

i=

1

20

——

while

(i<=

10

):

21

————

print

“*”

,end=

‘’

22

————

i=i+

1

23

——

print

\r

24

——

j=j+

1

25

#程式設計實現:列印如下的星號(要求使用while實現)

26

‘’‘

27

*

28

**

29

***

30

****

31

*****

32

******

33

*******

34

********

35

’‘’

36

#i控制一行中字元的迴圈

37

i=

1

38

#j控制迴圈的行數

39

j=

1

40

while

(j<=

8

):

41

——

i=

1

42

——

while

(i<=j):

43

————

print

“*”

,end=

‘’

44

————

i=i+

1

45

——

print

\r

46

——

j=j+

1

47

48

#程式設計實現:將上面的對稱輸出。

49

#i控制一行中字元的迴圈

50

i=

1

51

#j控制迴圈的行數

52

j=

1

53

while

(j<=

8

):

54

——

i=

1

55

——

while

(i<=

8

-j):

56

————

print

“ ”

,end=

‘’

57

————

i=i+

1

58

——

i=

1

59

——

while

(i<=j):

60

————

print

“*”

,end=

‘’

61

————

i=i+

1

62

——

i=

1

63

——

while

(i<=j):

64

————

print

“*”

,end=

‘’

65

————

i=i+

1

66

——

print

\r

67

——

j=j+

1

68

#程式設計實現:給上圖新增一個樹幹,形成一顆松樹。

69

#16個星號,4個星號的樹幹,最左邊還要6個空格。

70

#i控制一行中字元的迴圈

71

i=

1

72

#j控制迴圈的行數

73

j=

1

74

while

(j<=

8

):

75

——

i=

1

76

——

while

(i<=

6

):

77

————

print

“ ”

,end=

‘’

78

————

i=i+

1

79

——

i=

1

80

——

while

(i<=

4

):

81

————

print

“*”

,end=

‘’

82

————

i=i+

1

83

——

print

\r

84

——

j=j+

1

85

‘’‘

86

當我們要輸出一個平面結構的時候,我們需要用迴圈的巢狀來完成

87

思考:

88

1)每一行如何輸出

89

2)要輸出多少行

90

3)每行輸出同行數的關係(迴圈變數的變化情況)

91

’‘’

【執行結果】

**********

**********

**********

**********

**********

**********

**********

**********

*

**

***

****

*****

******

*******

********

**

****

******

********

**********

************

**************

****************

****

****

****

****

****

****

****

****