2:43:41 剪刀石頭布 在第二個while 迴圈裡 少打一個 player= ,不然如果輸入錯誤的答案的話會一直被困在迴圈裡出不來。 while running: player = input("請輸入剪刀,石頭,布:") while player not in options: player = input("輸入錯誤,請重新輸入剪刀,石頭,布:")
很棒的python教學! 幫您小更正一下 5:40:27 談到的 zip 物件轉成列表、字典的問題 因為 zip 物件是一個迭代器,所生成的元素序列只能被遍歷一次, 所以在 for i in users: print(i) 之後,zip 物件中的元素就被消耗掉了,變成空的物件。 所以這時候要再將其轉成列表,就會是空的列表了。 所以應該先把上面兩行 remark ,就可以轉成列表。 當然,是一定無法轉成字典的,因為字典只能有 key 跟 value 兩個值
第55集字典推倒式 我是這麼照著打的 grades = [40,68,48,61,29] pass = [g for g in grades if g >= 60] print(pass) 但顯示是錯誤耶pass = [g for g in grades if g >= 60] ^ SyntaxError: invalid syntax 是要寫簡單點 條件放前面 後面放for g in grades嗎
@CodeShiba6 ай бұрын
哦,這裡出現 `SyntaxError` 的問題其實不是因為字典推導式的結構問題,而是因為 `pass` 是 Python 裡的保留字。在 Python 中,`pass` 是用來定義一個無操作的語句,所以不能用作變數名稱。 要解決這個問題,你只需要把變數名稱改成其他的名字,比如 `passed` 或者 `pass_grades` 之類的。修改後的程式碼看起來會像這樣: ```python grades = [40, 68, 48, 61, 29] pass_grades = [g for g in grades if g >= 60] print(pass_grades) ``` 這樣就沒有語法錯誤了,程式會正常運作,並且會輸出所有大於或等於 60 分的成績。希望這樣可以幫到你!