2017-08-30 4 views
1

私は単純な問題のようですが正しいとは言えません。私がやりたいことは、日付を入力し、次に、辞書に記載されている各アカウントの残高を入力することです。その後、合計を合計したいと思います。シンプルだが、私はそれを混乱させている。どのようにこの作品を作るためのアイデア?私は私が一緒に行く(これ以上のアカウント、または別のキー/値のペアなどを追加)に追加するつもりで、このための辞書を使用したいと思う。PythonでDictionaryを使用したファイナンス追跡

ありがとうございます!

savings = {'month': '' ['HSA': 0, 'BofA': 0, 'RothIRA': 0]} 

for item in savings: 
    month = input('Enter current month: ') 
    balance = int(input('Enter balance for: '{savings})) 
    savings[month][savings] = balance 
print(savings) 
print('Total savings for the month is: 'sum(balance) + 'dollars') 
+0

クラスimを使用する方が良いでしょう – diek

+0

あなたは構文エラーがあり、それを修正したいのですか、またはロジックを正しく取得できませんか?なぜなら、構文にはほとんど誤りがないからです。 – RetardedJoker

+0

@RetardedJoker私は多かれ少なかれ論理が正しいと思いますが(完璧ではありませんが)、構文エラーがロードされていることがわかります。 diekが言及したように、クラスを使用することの提案も良いかもしれませんが、私はそれにどのようにアプローチするのか分かりません。ありがとう – JD2775

答えて

1

より良い方法は、上記のクラスに進むことです。しかし、単純なニーズに応えるために、ここでの実装がよくさらに向上させることができますが、この情報がお役に立てば幸い

savings = {'month': {'HSA':0, 'BofA':0, 'RothIRA':0}}; 

for item in savings: 
    month = input("Enter current month: "); 
    monat = savings.get(month); 
    accNames = list(monat.keys()); 
print(accNames); 

for s in range(len(accNames)): 
    balance = int(input("Enter balance for "+accNames[s]+" : ")); 
    savings[month][accNames[s]] = balance; 
print(savings[month]);  
print("Total is :" + str(int(savings[month][accNames[0]]+savings[month][accNames[1]]+savings[month][accNames[2]])) + "$"); 

を行きます。

+0

ありがとう@RussellB。それは役に立ちます。私はこれを試して、それをクラスに変えて、それがどんなものか見てみましょう – JD2775

関連する問題