Python分支結構及循環結構


Python中分支結構:

1.在Python中,要構造分支結構可以使用ifelifelse關鍵字。

所謂關鍵字就是有特殊含義的單詞,像ifelse就是專門用於構造分支結構的關鍵字,很顯然你不能夠使用它作為變量名(事實上,用作其他的標識符也是不可以)。

2.Python中沒有用花括號來構造代碼塊而是使用了縮進的方式來設置代碼的層次結構,如果if條件成立的情況下需要執行多條語句,只要保持多條語句具有相同的縮進就可以了,換句話說連續的代碼如果又保持了相同的縮進那么它們屬於同一個代碼塊,相當於是一個執行的整體。

3.例題:

"""
分段函數求值
3x - 5 (x > 1)
f(x) = x + 2 (-1 <= x <= 1)
5x + 3 (x < -1)

"""

x = float(input('x = '))
if x > 1:
y = 3 * x - 5
else:
if x >= -1:
y = x + 2
else:
y = 5 * x + 3
print('f(%.2f) = %.2f' % (x, y))

Python中循環:

1.在Python中構造循環結構有兩種做法,一種是for-in循環,一種是while循環。

1.1 for ...in...循環:

如果明確的知道循環執行的次數或者是要對一個容器進行迭代(后面會講到),那么我們推薦使用for-in循環:

例題:

"""
用for循環實現1~100求和

"""

sum = 0
for x in range(101):
sum += x
print(sum)

注意一點:

需要說明的是上面代碼中的range類型,range可以用來產生一個不變的數值序列,而且這個序列通常都是用在循環中的,例如:

  • range(101)可以產生一個0到100的整數序列。

  • range(1, 100)可以產生一個1到99的整數序列。

  • range(1, 100, 2)可以產生一個1到99的奇數序列,其中的2是步長,即數值序列的增量。

1.2 while循環:

如果要構造不知道具體循環次數的循環結構,我們推薦使用while循環,while循環通過一個能夠產生或轉換出bool值的表達式來控制循環,表達式的值為True循環繼續,表達式的值為False循環結束

例題:

"""
輸入一個正整數判斷它是不是素數

"""
from math import sqrt

num = int(input('請輸入一個正整數: '))
end = int(sqrt(num))
is_prime = True
for x in range(2, end + 1):
if num % x == 0:
is_prime = False
break
if is_prime and num != 1:
print('%d是素數' % num)
else:
print('%d不是素數' % num)

代碼:

z=0
f=0
sum=0
count=0
d=1
def yun(d):
global z,f,sum,count
while d!=0:
d=int(input('Enter an integer,the ends if it is 0:'))
if d>0:
z+=1
if d<0:
f+=1
sum+=d
if d!=0:
count+=1
print('正數個數:%d' % z)
print('負數個數:%d' % f)
print('和為:%d' % sum)
print('平均數是:%f' % (sum/count))

yun(d)

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM