看板 Python 關於我們 聯絡資訊
各位前輩大家好 小弟剛開始接觸Python 目前是看Python學習手冊自學中 在這裡請教各位幾個問題 在第四章提到串列這邊的例子 1. >>> M = [[1, 2, 3] 2. [4, 5, 6] 3. [7, 8, 9]] 4. >>> diag = [M[i][i] for i in [0, 1, 2]] # 從矩陣中收集對角線項目 5. >>> diag 6. [1, 5, 9] 7. >>> doubles = [c * 2 for c in 'spam'] # 重複字串中的字元 8. >>> doubles 9. ['ss', 'pp', 'aa', 'mm'] 那個第四行和第七行真的看不懂 特別是i跟c是什麼? 可不可以請板上的前輩幫小弟解釋一下 謝謝大家 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 203.204.150.148
godfat:只是一個名字(placeholder),拿來放後面依序給定的東西 01/18 19:30
godfat:例如 for c in 'spam' 就是 c 會依序成為 s, p, a, m 01/18 19:31
godfat:於是生出來的東西就是 ['ss', 'pp', 'aa', 'mm'], 因為 *2 01/18 19:32
aquarianboy:第四行是指抓出M裡面的[0][0], [1][1], [2][2]位置的 01/18 21:17
aquarianboy:資料 01/18 21:17
shaopin:從for c in 'spam' 開始看,有一點用到LISP語言的精神 01/19 04:06
sbrhsieh:如果還沒讀到 for statement,建議等唸過 for 回頭來看 01/19 12:55
sbrhsieh:list comprehension 01/19 12:55
sbrhsieh:懂 for statement 應該不會不懂 list comprehension 01/19 12:56
LeonH:我了解了!感謝大家!! 01/20 22:02