Я пытаюсь найти строку в массиве, но даже если строка содержится в массиве, переменная возникает с False при печати переменной I используется для поиска строки. Любая помощь будет оценена, вот код внизу:Я не могу найти строку в подмассиве в массиве массивов
Name='Admin'
array=[['Joseph', '03', '01', 'NN'], ['Seph', '10', '08', '09'], ['Jo', '05', '04', '07'], ['Mark', '01', 'NN', 'NN'], ['BigDave', '00', '02', 'NN'], ['Davy', '03', 'NN', 'NN'], ['Admin', '10', 'NN', 'N']]
check=Name in array
print(check)
Результатом этой печати результатов в этом False
, и я не понимаю, почему он это делает.
Поскольку 'in array' only search верхний уровень списка, а не внутренние списки. Вы имели в виду, например, 'check = any (имя в подмассиве для подмассива в массиве)' или 'any (subarray [0] == Name ...)'? Альтернативно, реструктурируйте свои данные - словарь '{'Joseph': ['03', '01', 'nn'], ...}' позволит вам искать имена в 'O (1)', а не 'O (п) '. – jonrsharpe
Да, я бы это сделал, но это означало бы, что мне придется реструктурировать мои данные complier –
@jonrshape Мне также нужно добавить словарь –