2010-08-02 70 views
1

我有一個3項目列表的字典(索引2),由0-150左右的鍵組織。我需要將它分類到另一個字典中,並具有以下約束條件:
1.)附加到一個密鑰的所有項必須保留在第二個字典中
2.)第二個字典中項目的長度必須全部相同。爲了解決這個問題,我將第一個字典中的項目總數除以第二個字典中的鍵數,並將其附加到一個變量中,以便將其用作限制因素。幫助將字典排序到另一個字典

這是我到目前爲止,但是當我運行它時,它實際上並沒有追加任何東西到目標字典。

for key,runs in index2.iteritems(): 
    for a in mCESrange: 
     if index2[key][0] in mCESdict[a]: 
      pass 
     elif len(mCESdict[a]) < mCESlength: 
      pass 
     else: 
      mCESdict[a].extend(index2[key]) 
+0

關於你的代碼的一些奇怪的事情:1.不要用變量名稱來影響'range'。 2.'len(index2.values())== len(index2)',所以不要調用values()。 – 2010-08-02 18:13:26

+0

是的,這些東西都是從原來的代碼改變到簡化,原始的範圍是預定義的,並使用了不同的名稱,但我認爲解釋什麼是mCESrange會更困難。 – Tob 2010-08-02 18:15:08

回答

0

您的問題描述是不是真的清楚,非工作代碼很少有助於澄清,但我懷疑這條線是你的問題:elif len(dict[a]) < length

+0

哎呀,這是問題所在。接受我最謙恭的道歉。 http://img29.imageshack.us/img29/9793/nrns.gif – Tob 2010-08-02 18:27:11