我有一個有序字典像以下:插入號碼列表
source =([('a',[1,2,3,4,5,6,7,11,13,17]),('b',[1,2,3,12])])
我首先要計算每個鍵的值的長度,然後計算它的sqrt
,說它是大號。
插入L到可以無餘數分開的位置並在其他數字之後插入「1」。
例如,source['a'] = [1,2,3,4,5,6,7,11,13,17]
它的長度是9 因此SQRT的len(source['a'])
是3.
在其可以恰好通過3(例如,3位被劃分的位置,位置6,位置插入號碼3 9)如果數字的位置不能完全按3分割,則在其後面插入1。
要得到的結果類似folloing:
result=([('a',["1,1","2,1","3,3","4,1","5,1","6,3","7,1","11,1","13,3","10,1"]),('b',["1,1","2,2","3,1","12,2"])]
我不知道如何在列表中更改項目爲一個字符串對。順便說一句,這不是我的家庭作業,我試圖建立一個布爾型迴歸引擎,源數據太大,所以我只是在這裏創建了一個簡單的示例來解釋我想要達到的目標:)
如果這是一個標準的Python字典,那麼它不是有序的。你需要使用collections.OrderedDict(也許你會這樣做)。 – uselpa 2013-03-03 08:43:24
向我們展示您所嘗試的或您認爲可能解決問題的方法總是一個好主意,即使完全錯誤。 – Kev 2013-03-03 16:43:49