閱讀867 返回首頁    go 阿裏雲 go 技術社區[雲棲]


python控製語句

1.關鍵知識點


1.python中的相等意味著

1.兩個不同的名字關聯的對象,具有相同的值
2.兩個不同的名字與同一個對象(具有相同ID的對象)關聯
==檢查兩個名稱引用的對象是否具有相同的值
is檢查兩個名字是否引用同一個對象

2.比較兩個浮點數是不是相等應該用(x-y)< 1.0000001,而不能用x==y,否則可能會得到錯誤的結果

3.python的牛叉之處:比較X是不是大於等於A小於等於B的時候用

A <= X <= B;這一點和其他的編程語言不同

4.Python的賦值與其他編程語言的不同之處在於python支持多重賦值;比如

aInt, bInt, cInt = 15, 10, 17
等價於:
aInt = 15
bInt = 10
cInt = 17

5.Python交換兩個變量的值可以用:

>>> aInt = 2
>>> bInt = 3
>>> aInt,bInt = bInt,aInt
這種用法很便捷,不用自己定義中間變量了

6.python中while語句後麵可以使用else從句

while 條件判斷:
語句塊
else :
語句塊
在上述語句中,即使while一次不執行,程序直接執行else語句,這種執行方式類似於do while語句,while循環結束時的else語句,可以視為循環正常結束時的清理動作。

7.for語句也可以else語句塊中止,可可以和break和continue一塊使用

for target in object:
# statementSuite1
if boolenExpression1:
break
if boolenExpression2:
continue
else:
statementSuite2
for循環正常退出後,執行else塊
break語句提供了for循環的異常退出,跳過else子句
continue語句終止目前的循環異常,繼續循環餘下的部分

2.課後習題:

2.1有多少個三位數字能被17整除?編寫程序,將這些數字顯示出來

#all triple digits that can be divided exactly by 17
count = 0
for num in range(100,1000):
    if(num % 17 == 0):
        print num,
        count = count +1
print 
print "Total number is:",count

2.2連續整數之和:


(a)寫一個程序,提示輸入整數X,然後計算從1開始,連續X哥整數之和。也就是說,如果X = 5,要計算1+2+3+4+5 = 15

sum = 0
count = 1
num = raw_input("input an Integer:")
num = int(num)
while count <=num:
    print count,
    sum = sum + count
    if(count != num):
        print "+",
    count  = count + 1   
print "=",sum

(b)改寫程序,使用循環嵌套的方式計算連續整數和。例如,如果輸入5,輸出來內需5個數字的和:
1=1
1+2=3
1+2+3=6
1+2+3+4=10
1+2+3+4+5=15
sum = 0
count = 1
num = raw_input("Enter an integer:")
num = int(num)
while(count <= num):
    sum = sum + count
    count = count + 1
    print sum,",",

(c)再次修改程序,如果得到的和能被操作數的數目(X)整除,顯示和的值。
sum = 0
count = 1
num = raw_input("Enter an integer:")
num = int(num)
while(count <= num):
    sum = sum + count
    count = count + 1
if(sum % num == 0):
    print sum

2.6.編寫一個程序,提示輸入一個整數,並顯示此整數。如果輸入的不是整數,程序將一直提示要求輸入整數。

num = raw_input("Input an Integer:")

while(num.isdigit() != True):
    print "Error: try again. ",
    num = raw_input("Input an Integer:")
else:
    print "The Ingeger is",num

3.編程項目

3.2 折紙有多厚
從報紙中抽出一張,對折,再對折,繼續對折。可以把它折疊30次嗎?假設可以折疊30次,請問厚度為多少?假設紙的厚度是1/200厘米.
height = 1.0/20000;

times = raw_input("Input the times to fold:")
times = int(times)

height = height * 2**times
print "After fold,the height is :",height















最後更新:2017-04-03 16:48:33

  上一篇:go Design Pattern: Prototype 模式
  下一篇:go android 開機動畫(boot animation)的製作