J'ai un dictionnaire contenant une liste de dictionnaires comme ci-dessous: Je veux boucler via cette ligne d'impression chaque ligne comme ceci: p> 5.45.32.0, True
185.160.58.0, 24
3 Réponses :
output = { "Facebook": [
{ "prefix": "5.45.32.0\/22", "exact": True },
{ "prefix": "185.160.58.0\/23", "exact": False, "greater-equal": 24, "less-equal": 24 },
{ "prefix": "5.57.248.0\/21", "exact": True },
{ "prefix": "5.206.208.0\/20", "exact": True },
{ "prefix": "185.54.94.0\/23", "exact": False, "greater-equal": 24, "less-equal": 24 },
{ "prefix": "31.193.104.0\/21", "exact": True },
{ "prefix": "213.233.192.0\/18", "exact": True },
{ "prefix": "217.26.96.0\/20", "exact": True }
] }
for item in output['Facebook']:
if item['exact'] == True:
print ("{}, {}".format(item['prefix'].split('\/')[0], item['exact']))
else:
print ("{}, {}".format(item['prefix'].split('\/')[0], item['greater-equal']))
Je reçois cette erreur: TypeError: les indices de chaîne doivent être entiers
Cela devrait fonctionner.
5.45.32.0 True 185.160.58.0 24 5.57.248.0 True 5.206.208.0 True 185.54.94.0 24 31.193.104.0 True 213.233.192.0 True 217.26.96.0 True
5.45.32.0, True 185.160.58.0, 24 5.57.248.0, True 5.206.208.0, True 185.54.94.0, 24 31.193.104.0, True 213.233.192.0, True 217.26.96.0, True
PS, erreur dans votre code à "exact": true b>, il peut soit être "exact": "vrai" b> ou "exact": vrai b > Et comme.
Qu'en est-il des éléments suivants de la liste avec
/ 21 code>,/ 20 code>, ... etc? Et pourquoitrue code> dans le premier cas mais24 code> dans le deuxième cas?la sortie n'est pas claire. Quel résultat attendez-vous exactement? en termes de types de données Python.
Le premier élément "Préfixe": "5.45.32.0 \ / 22" J'ai besoin de 5.45.32.0 et le reste d'accès par la clé
Repose accéder par la touche CODE>, quelle touche fais-vous référence?