Я хочу, чтобы вернуть все подсписки списков, которая содержит определенную подстроку в определенном столбце:Одна строка кода Python, чтобы вернуть все подсписки из списка, содержащих определенную подстроку в particluar колонке
Для например:
List=[["2006ab","2005ac"],["2005ab","2004ac"],["2006ab","2005ac"],["2006ab","2003ac"],["2006ab","2005ac"]]
Критерии поиска: вернуть все подписи, которые содержат подстроку 2005 по второму индексу.
Выход:
[["2006ab","2005ac"],["2006ab","2005ac"],["2006ab","2005ac"]]
Я попытался с помощью:
matching = [s for s in List if "2005" in s[1]]
но он возвращает:
[["2006ab","2005ac"],["2005ab","2004ac"],["2006ab","2005ac"],["2006ab","2005ac"]]
да, но 2005 может быть 0-й индекс подсписка а, Ь мое намерение состоит в том, чтобы вернуть все подсписки только если она содержит 2005 в 1-й индекс подсписок. –
Запустите его снова. В коде нет ничего плохого. –
Ваш код дает правильный результат. '[s для s в списке, если« 2005 »в s [1]]' дает '[['2006ab', '2005ac'], ['2006ab', '2005ac'], ['2006ab', '2005ac'] ] '. – MisterMiyagi