分支和循環1

測試題:

0.       if not(money < 100): 上邊這行代碼相當於?

答:相當於if (money >= 100):

 

1.  assert的作用是什麼?

答:assert斷言,作用是主動的用於判斷程序裏某個條件是否成立,成立爲真,不成立爲假。當這個關鍵字後面的條件爲假的時候,程序自動崩潰並拋出AssertionError的異常。用於測試程序,如其讓錯誤的條件導致程序今後莫名其妙崩潰,不如在錯誤條件出現的那一瞬間自爆。

 

2.  假設有x=1,y=2,z=3,請問如何快速將三個變量的值互相交換?

答:使用三元操作符的條件表達式:

z =x if x < y else y

 

x,y,z= z,y,x

 

3.  猜猜(x < y and [x] or [y])[0]實現什麼樣的功能?

答:使用and or搭配實現三元操作符的功能,這裏有涉及列表和切片的知識。

 

4.  你聽說過成員資格運算符嗎?

答:成員運算符:in 和 not in

in:如果x在y中,成立則爲真,表示x是序列y的成員,否則爲false

notin:如果x不在y中,成立則爲真,表示x不是序列y的成員,否則爲false

 

動動手:

0.      改進查詢成績題目,提高效率:

題目:按照100分制,90分以上成績爲A,80到90爲B,60到80爲C,60以下爲D,寫一個程序,當用戶輸入分數,自動轉換爲ABCD形式打印。

答:

#!/usr/bin/envpython

#__coding:utf-8__

member = int(input("請輸入你的分數:"))

if 80 > member>= 60:

    print "C"

elif 90 >member >= 80:

    print "B"

elif 100 >member >= 90:

    print "A"

elif 60 >member >= 0:

print"D"

else:

    print("輸入錯誤!")

 

1.      請將以下代碼改爲三元操作符實現:

x, y, z = 6, 5, 4

if x < y:

    small = x

    if z < small:

        small = z

elif y < z:

    small = y

else:

    small = z

答:

x,y,z = 6 , 5 , 4

small = x if x< y else z

if small == x :

    small = z if z < x else x

small = y if y< z else z

 

正確答案:

small = x if (x< y and x < z) else (y if y < z else z)

 


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章