0. if not (money < 100): 這行代碼相當於?
if money >= 100:
1. assert 的作用是什么?
assert這個關鍵字我們稱之為“斷言”,當這個關鍵字后邊的條件為假的時候,程序自動崩潰並拋出AssertionError的異常。
什么情況下我們會需要這樣的代碼呢?當我們在測試程序的時候就很好用,因為與其讓錯誤的條件導致程序今后莫名其妙地崩潰,不如在錯誤條件出現的那一瞬間我們實現“自爆”。
一般來說我們可以用Ta再程序中置入檢查點,當需要確保程序中的某個條件一定為真才能讓程序正常工作的話,assert關鍵字就非常有用了。
2. 假設有 x = 1,y = 2,z = 3,請問如何快速將三個變量的值互相交換?
x, y, z = z, y, x
3. 猜猜 (x < y and [x] or [y])[0] 實現什么樣的功能?
這其實是 Python 的作者還沒有為 Python 加入三元操作符之前,Python 社區的小伙伴們靈活的使用 and 和 or 搭配來實現三元操作符的功能,這里邊有涉及到列表和切片的知識,這部分知識很快就會講解,迫不及待的朋友可以先稍微預習下。
4. 你聽說過成員資格運算符嗎?
Python 有一個成員資格運算符:in,用於檢查一個值是否在序列中,如果在序列中返回 True,否則返回 False。
例如:
- >>> name = '小甲魚'
- >>> '魚' in name
- True
- >>> '肥魚' in name
- False
當下節課我們講解 for 語句的時候,你看到 in 會不會就有了更深入的理解?!
動動手答案:
本帖隱藏的內容
0. 視頻中小甲魚使用 if elif else 在大多數情況下效率要比全部使用 if 要高,但根據一般的統計規律,一個班的成績一般服從正態分布,也就是說平均成績一般集中在 70~80 分之間,因此根據統計規律,我們還可以改進下程序以提高效率。
- score = int(input('請輸入一個分數:'))
- if 80 > score >= 60:
- print('C')
- elif 90 > score >= 80:
- print('B')
- elif 60 > score >= 0:
- print('D')
- elif 100 >= score >= 90:
- print('A')
- else:
- print('輸入錯誤!')
1. Python 的作者在很長一段時間不肯加入三元操作符就是怕跟C語言一樣搞出國際亂碼大賽,蛋疼的復雜度讓初學者望而生畏,不過,如果你一旦搞清楚了三元操作符的使用技巧,或許一些比較復雜的問題反而迎刃而解。
- small = x if (x < y and x < z) else (y if y < z else z)
2. 請寫下這一節課你學習到的內容:格式不限,回憶並復述是加強記憶的好方式!