Я хочу сделать словарь и массив из двухмерного массива.
Я написал коды:
data=[[['A','A'],['S','apple'],['W','NY']],[['A','B'],['S','windows'],['W','CF']],[['A','B'],['S','Lenovo'],['W','CH']],[['A','A'],['S','summung'],['W','KL']]]
dct = {}
ans=[]
for i in range(len(data)):
for j in range(len(data[i])):
print(j)
print(data[i][j][0])
if data[i][j][0] == 'A':
if data[i][j][0] not in dct:
dct[data[i][j][0]] = []
dct[data[i][j][0]].append(data[i][j][2])
ans.append(data[i][j][1])
else:
if data[i][j][0] not in dct:
dct[data[i][j][0]] = []
dct[data[i][j][0]].append(data[i][j][2])
ans.append(data[i][j][1])
Но когда я запускаю ниже:
dct[data[i][j][0]].append(data[i][j][2])
Я получаю IndexError
:
IndexError: list index out of range error
Мой идеальный dct
вывод
{'A': ['NY', 'KL'], 'B': ['CF', 'CH']}
Мой идеальный ans
вывод
['apple','summung','windows','Lenovo']
Я новичок в питоне, так что я действительно не понимаю, что не так. Как мне это исправить?