2017-11-18 12 views
-2

私はjson.dumpといくつかの方法を使用しなければならないこのコードを持っていますjson.load(またはより良い方法)は、保存のようなファイルを保存して読み込みますが、wenは出力をロードする独自の辞書です。私のコードで私はfor key , value in json,load(SV).itemsfor key, value in (variable for json.load)をuseingが、何も作業していないしようと試みkeynamefavlorite numberと呼ばれているすべてのvalue(それは巨大なエラー出力を行う)jsonを読み込む方法辞書だったの?

import json 
save = 'C:**(lots of files)**/saves/save1.json' 
class user(): 

    def remenbering(): 
    with open(save, 'w') as SV: 
    entrada1 = input('what is your name?') 
    entrada2 = input('favorite number?') 
    json_data= {'name': entrada1, 
      'favorite number': entrada2} 
    json.dump (json_data, SV) 

    def greetings(): 
     with open(save, 'r') as SV: 
      print(json.load(SV)) #turn better output 

    def start(): 
    print('1=load file one\n2=overwrite') 
    while True: 
     try: 
     entrada = int(input()) 
     if entrada == 1: 
      user.greetings() 
      break 
     if entrada ==2: 
      user.remenbering() 
      break 
     else: 
      print('1 or 2') 
    except: 
    print ('must be 1 or 2') 

user.start() 
+0

コピー 、ここで、この年末からいくつかの行を貼り付けます:

with open(save) as sv: json_data = json.load(sv) 

答えて

0
が上位1を完了するために、 `それが助け
0

使用json.load JSONをロードしますファイルからだっ行うための正しい方法

def greetings(): 
     with open(save) as SV: 
      json_data = json.load(SV) #better output 
      for key,value in json_data.items(): 
      if key == 'name': 
       print ('your name is '+value) 
      if key == 'favorite number': 
       print ('your favorite number is '+value) 
+0

output'巨大な誤りを作ります多くの場合、それは動作しますが、私の場合は少し冷たくなっています – n00veloper

+0

@ n00veloperあなたが投稿したコードのどこに問題が発生していますか? –

関連する問題