J'essaie d'obtenir la première valeur de chaque liste de liste basée sur la 3ème valeur de la liste - si elle est Le La liste initiale de la liste ressemble à: p> Ceci est le résultat souhaité: p> -3 code>, puis prenez la première valeur de cette liste.
['GRRSCLOE1','GRAMDZGP1','GRASAOTB2','GRTVAPEM4']
4 Réponses :
[i[0] for i in given_list if i[2] == -3] This might help you
Essayez ceci:
l = [['GRRSCLOE1', <DstTzInfo 'America/Santiago' LMT-1 day, 19:17:00 STD>, -3.0, 'RR'], ['GRTFRAIX1', <DstTzInfo 'Europe/Berlin' LMT+0:53:00 STD>, 1.0, 'P'], ['GRAMDZGP1', <DstTzInfo 'America/Argentina/Mendoza' LMT-1 day, 19:25:00 STD>, -3.0, 'P+PE'], ['GRASAOTB2', <DstTzInfo 'America/Sao_Paulo' LMT-1 day, 20:54:00 STD>, -3.0, 'PE'], ['GRTVAPEM4', <DstTzInfo 'America/Santiago' LMT-1 day, 19:17:00 STD>, -3.0, 'P']] new_list = [i[0] for i in l if int(i[2])==-3]
Merci beaucoup merci, exactement ce dont j'avais besoin. Je construisais une liste déroulante interconnectée avec ipwidgets.
Explications: strong> p> Tout d'abord, vos chaînes de liste initiales doivent être entourées de citations doubles ou simples, si vous avez des guillemets simples dans la chaîne et que vous ne souhaitez pas vous échapper, utilisez des guillemets doubles. P> Alors ce que vous recherchez est la liste des compréhensions de la liste: p>
[<< Opération sur a> pour une liste dans la liste Si
A [0] code> li>
ul> p>
Vous pouvez utiliser l'opérateur itemGetter () code> pour obtenir des éléments des sublistes:
[i [0] pour i dans votre_list] code>?