Pour stocker une clé API dans JSON, j'ai créé un programme Python avec l'aide du SOF qui prend en charge de l'utilisateur. Le code suivant fonctionne bien et écrit au fichier JSON sortie: (écrit dans le fichier) p> mais en lisant avec le code suivant Il génère verticalement p> sortie: p> Comment puis-je obtenir une sortie normale. Je pense qu'il y a deux manières en écrivant à imbriquée ou à lire sans boucle. p> p>
3 Réponses :
Eg: a='Nandu' for i in a: print(i) Output: N a n d u
Vous en boucle sur l'objet ou vous modifiez votre membre Data ['Key'] code> Mais cet objet est une chaîne code> dans votre fichier JSON. Donc, la boucle pour code> imprimera chaque caractère de la chaîne. Vérifiez Ce pour plus d'informations.
Vous devez supprimer la boucle et accéder à la clé directement: clé code> dans votre JSON en une matrice: p> import json
f = open('Sample.json')
data = json.load(f)
for Key in data["key"]:
print(Key)
f.close()
$ python Test.py
a
c
Merci et oui, comme je l'ai dit, il y en a deux en supprimant la boucle ou en écrivant de manière imbriquée (tableau) en premier lieu. Mais je ne pouvais pas penser lentement pour un peu, alors mettez-le ici. Vous pouvez également mettre à jour votre réponse avec la rédaction comme une matrice à partir de l'entrée de l'utilisateur Cela faciliterait une réponse parfaite à la question
Utilisation de cette
import json
k = {}
k['main']='api_key='+ input("enter key: ")
with open("sample.json", "w") as outfile:
json.dump(k, outfile, indent=4)
print("successfully written")
f = open('sample.json',)
data = json.load(f)
print(data['main'][8:])
f.close()
Vous êtes itération sur la chaîne avec
pour i en données ['Key'] code>. Vous voulez probablement justeImprimer (Data ['Key']) Code>.Data ['Key'] Code> est une chaîne, alors imprimez-la directement sans boucle.Data [Touche] CODE> Points sur la chaîne. Vous êtes simplement itérant sur les données[clé] code>