def main(): names=['關羽','張飛','趙雲','馬超','貂蟬'] subjects=['語文','數學','Python'] table=[[0 for _ in range(3)] for _ in range(5)] #table=[[0]*len(subjects)]*len(names)這種寫法為錯誤的 為同一引用 同一地址 #table[[0]*len(subjects) for_ in range (5)]這種寫法為正確的 for row,name in enumerate(names): print('請輸入%s的成績:'% name) for col,subject in enumerate (subjects): table[row][col]=int(input('%s:' % subject)) print(table) if __name__ == '__main__': main()
結果: 請輸入關羽的成績: 語文:89 數學:88 Python:88 請輸入張飛的成績: 語文:78 數學:74 Python:75 請輸入趙雲的成績: 語文:85 數學:96 Python:98 請輸入馬超的成績: 語文:78 數學:85 Python:95 請輸入貂蟬的成績: 語文:55 數學:58 Python:95 [[89, 88, 88], [78, 74, 75], [85, 96, 98], [78, 85, 95], [55, 58, 95]]