【Python】問題解決:TypeError: 'int' object is not subscriptable

前言

這是我在寫 leetcode debug 時發生的問題

TypeError: 'int' object is not subscriptable

解決方法

這個問題的發生原因,是因為我們嘗試將 int 的 object 做一個取 index 的動作,

問題舉例

舉個我發生問題的例子:

edges = [[0, 1], [1, 2]]
for i, edge in enuemrtate(edges):
    print(edge[i][0])

可以先思考一下我上面的程式碼有什麼問題? 再來看解答哦!!

公布上方問題的解答

對於每一個元素,其實我們要用 edges[index] 去取他,
edge 本身就已經等於 [0, 1] 了

如果取 edge[0][0] = 0[0] ,當然電腦也不知道該回傳什麼給你了!

基本上這類問題小心就好,這邊其實就是因為 edge 與 edges 兩個變數太像了,才容易發生這樣的問題。

Reference

Licensed under CC BY-NC-SA 4.0