私は F# を学び始めていますが、単純なことを理解するのに苦労しています。F# に変換したい Python コードがあります。問題は、Python での辞書の初期化であり、F# に変換する方法がよくわかりません。
dicoOfItems = {'aaaaa': {'a': 2.5, 'b': 3.5, 'c': 3.0, 'd': 3.5, 'e': 2.5,'f': 3.0}, 'bbbbb': {'a': 3.0, 'b': 3.5}}
それから関数があります
def sim_distance(prefs,person1,person2):
si={} // I want the same in F#
for item in prefs[person1]:
if item in prefs[person2]: si[item]=1
// do stuff
return something
この関数は、たとえば次のパラメーターで呼び出されます
sim_distance(dicoOfItems, 'aaaaa', 'bbbbb')
私の質問は、新しい辞書siを取得するために F# で同じことを行うにはどうすればよいですか?
Python if .. in .. list 構文を f# Seq.exists で使用しようとしましたが、新しい辞書を初期化する方法がわかりませんでした。
Seq.choose、Seq.map で遊んだことがありますが、成功しませんでした。