Я хочу определить функцию в Python, чтобы установить биекцию между двумя вложенными списками.Два списка a
и b
, и я хочу сопоставить a[i][j]
с b[i][j]
.
Однако я не могу этого сделать.Я попытался использовать цикл while
, а также цикл for
для перебора индексов элементов списков, но безрезультатно.
Я новичок в Python, поэтому любая помощь в этом будетпризнателен.
Вот код, который я пытался.У меня есть следующие два списка, lastcoldata
и firstcoldata
(представленные ниже), и я хочу провести вышеупомянутую биекцию между ними.
lastcoldata=[[4], [0, 5, 6], [3], [], [], [], [], [], [], [], [], [], [], [], [1, 2], [], [], [], [], [], [], [], [], [], [], [], []]
firstcoldata=[[0], [1, 2, 3], [4], [], [], [], [], [], [], [], [], [], [], [], [5, 6], [], [], [], [], [], [], [], [], [], [], [], []]
def bijection(num):
i=0;j=0
while i<27:
while j<len(lastcoldata[i]):
if num==lastcoldata[i][j]:
return firstcoldata[i][j]
j=j+1
i=i+1
Например, я попытался позвонить bijection(lastcoldata[1][0])
ине было никакого выхода, в то время как ожидаемый результат был 1
.Он работал нормально для bijection(lastcoldata[1][1])
и bijection(lastcoldata[1][2])
соответственно, давая выходные данные 2
и 3
соответственно.