Je reçois deux réponses JSON avec une longueur différente: "Data" et "data_out".
Une partie courte des "données": p> alors Le bloc peut répéter dans les périodes de "données".
La même chose dans "data_out", mais il y a une autre date / heure. P> Je dois faire un fichier où sont deux listes JSON seront trier par date et heure.
Je le fais avec "tandis que". P> mais j'ai un problème que "les données" se termine plus tôt que "data_out". Parfois, c'est tellement, mais parfois "data_out" est plus long que "les données" et j'ai une erreur: p>
3 Réponses :
Je ne pense pas que vous ayez besoin de deux fois tandis que des boucles si vous allez utiliser deux variables d'index distinctes.
while index_3 < len(data['value']) and index_out_3 < len(data_out['value']): time_in = (data['value'][index_3]['C']) time_out = (data_out['value'][index_out_3]['C']) if time_in < time_out: <put all info from 'data' to xls-file> index_3 += 1 else: <put all info from 'data_out' to xls-file> index_out_3 += 1
Merci! Honte sur moi.
Tout le monde doit commencer quelque part. Acclamations!
si data code> et
data_out code> ont une structure similaire (comme dans votre exemple),
Vous pouvez chaîner les deux listes ensemble, puis simplement trier par temps.
Les clés dans [valeurs] ont un peu de noms différents. "Start_time" et "starttime", par exemple.
https://github.com/xlwings/jsondiff est trop cool et je compte sur elle fortement. Merci au créateur de ce paquet p>
Ceci est un extrait pur de la page d'accueil de code README P>
de JSONFIFF importation DIFF P>
diff ({'A': 1, 'B': 2}, {'B': 3, 'C': 4}) P> blockQuote> blockQuote> blockQuote>
{'C': 4, 'B': 3, Supprimer: ['A']} P>
diff ("A ',' B ',' C '], [' A ',' B ',' C ',' D ']) P> blockQuote> blockQuote> blockQuote>
{insert: [(3, 'd')]} p>