私はループで実行していて、文字列を解析しています。その文字列には最終的にホスト上で実行されるホストとアプリケーションの2つの項目が含まれます。予想どおり、ホストは複数のアプリケーションを実行します。私はホストをキーとして使用する1つのデータ構造にすべてを格納したいと思います。ループでPythonを使用してHashMapを構築する。明確化が必要
以下は失敗した試行です。最後の要素だけがhost = app形式で保存されている理由を理解してください。
What i expect to see
host = app1, app2 etc
What i see
Host = app2 (always last)
data = dict()
def add(line):
l = line.split("/")
host = l[0].strip()
app = l[-1].strip()
data[host].append(app)
for entry in env:
if "/" not in entry: continue
add(entry)
print data
可能な複製を支援しようとしているすべての人々に感謝し、[作業をcollections.defaultdictんどのように?](http://stackoverflow.com/questions/5900578/how-does-collections-defaultdict-work) –
これは、最後の項目を返すだけでなく、 'KeyError'で失敗するでしょう。これには本当に[mcve]が必要です。 –