我開始學習F#,並且我正在努力弄清楚簡單的事情。我有一個我想轉換爲F#的Python代碼。問題是Python中字典的初始化,我不知道如何轉換爲F#。F#中的字典初始化類似於Python
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')
我的問題是我怎麼能獲得一個做在F#相同新詞典si?
Python if ... in .. list語法我嘗試使用f#Seq.exists但後來我不知道如何初始化新的字典。
我玩過Seq.choose,Seq.map但沒有成功。
不太確定你想要做什麼,但你可以嘗試使用'dict [('a',2.5);('b',3.5)...] ' –
我正在使用字典。我想要做的是和Python中的一樣。 For循環和比較if .. In ..獲得一個新的字典'si' –