operator
- Python 的 floor 除法如今使用 「//」 實現,那 3.0 // 2.0 您目測會顯示什麼內容呢?
- a < b < c 事實上是等於?
- 不使用 IDLE,你能夠輕鬆說出 5 ** -2 的值嗎
- 5**(-2)
- 冪運算操做符比其左側的一元操做符優先級高,比其右側的一元操做符優先級低。
- 如何簡單判斷一個數是奇數仍是偶數?
- 取餘%, if(a%2) "是奇數" else "是偶數"
- not 1 or 0 and 1 or 3 and 4 or 5 and 6 or 7 and 8 and 9
- (not 1) or (0 and 1) or (3 and 4) or (5 and 6) or (7 and 8 and 9)
- == 0 or 0 or 4 or 6 or 9
- == 4
- 還記得咱們上節課那個求閏年的做業嗎?若是尚未學到「求餘」操做,還記得用什麼方法能夠「委曲求全」代替「%」的功能呢
- 請寫一個程序打印出 0~100 全部的奇數。
- 咱們說過如今的 Python 能夠計算很大很大的數據,可是......真正的大數據計算但是要靠剛剛的硬件滴,不妨寫一個小代碼,讓你的計算機爲之崩潰?
- 愛因斯坦曾出過這樣一道有趣的數學題:有一個長階梯,若每步上2階,最後剩1階;若每步上3階,最後剩2階;若每步上5階,最後剩4階;若每步上6階,最後剩5階;只有每步上7階,最後恰好一階也不剩。
- 答案:github.com/LiuJiYangYa…
Branching and cycling分支與循環
- if not (money < 100): 上邊這行代碼至關於?
- assert 的做用是什麼?
- assert這個關鍵字咱們稱之爲「斷言」,當這個關鍵字後邊的條件爲假的時候,程序自動崩潰並拋出AssertionError的異常。 什麼狀況下咱們會須要這樣的代碼呢?當咱們在測試程序的時候就很好用,由於與其讓錯誤的條件致使程序從此莫名其妙地崩潰,不如在錯誤條件出現的那一瞬間咱們實現「自爆」。 通常來講咱們能夠用Ta再程序中置入檢查點,當須要確保程序中的某個條件必定爲真才能讓程序正常工做的話,assert關鍵字就很是有用了。
- 假設有 x = 1,y = 2,z = 3,請問如何快速將三個變量的值互相交換?
- 猜猜 (x < y and [x] or [y])[0] 實現什麼樣的功能?
- 這實際上是 Python 的做者尚未爲 Python 加入三元操做符以前,Python 社區的小夥伴們靈活的使用 and 和 or 搭配來實現三元操做符的功能,這裏邊有涉及到列表和切片的知識
- 你據說過成員資格運算符嗎?
- Python 有一個成員資格運算符:in,用於檢查一個值是否在序列中,若是在序列中返回 True,不然返回 False
>>> name = '小甲魚'
>>> '魚' in name
True
>>> '肥魚' in name
False
複製代碼
- 視頻中小甲魚使用 if-elif-else 在大多數狀況下效率要比所有使用 if 要高,但根據通常的統計規律,一個班的成績通常服從正態分佈,也就是說平均成績通常集中在 70~80 分之間,所以根據統計規律,咱們還能夠改進下程序以提升效率。
- Python 的做者在很長一段時間不願加入三元操做符就是怕跟 C 語言同樣搞出國際亂碼大賽,蛋疼的複雜度讓初學者望而生畏,不過,若是你一旦搞清楚了三元操做符的使用技巧,或許一些比較複雜的問題反而迎刃而解。
- 請寫下這一節課你學習到的內容:格式不限,回憶並複述是增強記憶的好方式!
- 打飛機小遊戲的設計框架
- 條件表達式(三元操做符)
x, y = 4, 5
if x < y:
small = x
else:
small = y
small = x if x < y else y
複製代碼
- 斷言(assert)
- assert這個關鍵字咱們稱之爲「斷言」,當這個關鍵字後邊的條件爲假時,程序自動崩潰並拋出AssertionError的異常。當這個關鍵字後邊的條件爲真時,程序無影響。
- 答案:github.com/LiuJiYangYa…