私は販売された本の量に基づいて人のリストを作成しようとしています。同じ商品を同じ店舗に販売している人のために出力を追加して印刷するPythonコード
データはこのファイル1711.txtで提供されています。
- > david book 05 walmart
- > emily book 10 kroger
- > jason food 11 target
- > david food 20 kroger
- > eva cloth 13 target
- > david book 5 walmart
のような出力が何かする必要があります:ダビデは EVAは
を対象とする13枚の布を販売ウォルマート
に10冊を販売し
ダビデは20食をクルーガーに売った
Eこれまで:
d = {}
p={}
q={}
with open("1711.txt","r") as f:
for line in f:
a=line.split()
l,m,n,o=str(a[0]), str(a[1]), int(a[2]), str(a[3])
if l not in d:
d[l] = {}
if m not in d[l]:
d[l][m] = {}
if n not in d[l]:
d[l][m][n] = {}
d[l][m][n]= str(o)
print(d)
コードはこの出力を生成する:
{
'eva': {'cloth': {13: 'target'}},
'david': {'book': {5: 'walmart'}, 'food': {20: 'kroger'}},
'emily': {'book': {10: 'kroger'}},
'jason': {'food': {11: 'target'}}
}
しかし、それは同じ人で同じ店に販売した製品の値を加算していません。必要な出力であるのに対し
デビッド・ブック5ウォルマート
:
デビッド帳10ウォルマート
コードはreqですPython 3.5で動作するようになった。 – Apple
こんにちは。あなたの質問を編集して、少し読みやすくしました。このサイトでは、可能な限り改善するために質問を編集して再編集することをお勧めします。 –