首頁>Program>source

有序字典是非常有用的結構,但是不幸的是,它们仅在 3.1 2.7 .在旧版本中如何使用有序字典?

最新回復
  • 5月前
    1 #

    我在python 2.6上使用pip安裝了orderddict

    pip install ordereddict
    

  • 5月前
    2 #

    根据文件,對於Python 2.4或更高版本,應使用此代碼. PEP的贡献者之一Raymond Hettinger也提供了一些代碼.此處的代碼据稱可以在2.6和3.0下工作,並且是為该建議而設計的。

  • 5月前
    3 #

    要為不同版本的Python匯入OrderedDict類,請考虑以下代碼段:

    try:
        from collections import OrderedDict
    except ImportError:
        from ordereddict import OrderedDict
    # Now use it from any version of Python
    mydict = OrderedDict()
    

    早於Python 2.6的版本將需要安裝 ordereddict (使用pip或其他方法),但是较新的版本將从內建的collections模組中匯入。

  • 5月前
    4 #

    此外,如果情况允许,您可以按照自己的方式程式設計:

    def doSomething(strInput): return [ord(x) for x in strInput]
    things = ['first', 'second', 'third', 'fourth']
    oDict = {}
    orderedKeys = []
    for thing in things:
        oDict[thing] = doSomething(thing)
        orderedKeys.append(thing)
    for key in oDict.keys():
        print key, ": ", oDict[key]
    print
    for key in orderedKeys:
        print key, ": ", oDict[key]
    

    second : [115, 101, 99, 111, 110, 100]
    fourth : [102, 111, 117, 114, 116, 104]
    third : [116, 104, 105, 114, 100]
    first : [102, 105, 114, 115, 116]

    first : [102, 105, 114, 115, 116]
    second : [115, 101, 99, 111, 110, 100]
    third : [116, 104, 105, 114, 100]
    fourth : [102, 111, 117, 114, 116, 104]

    我想,您也可以在字典中嵌入有序键,因為oDict ['keyList'] = orderedKeys

  • 5月前
    5 #

    也可以尝試 future ,py2-3相容的代碼庫:

    安裝 future 通過點子:

    pip install future

    匯入並使用OrderedDict:

    from future.moves.collections import OrderedDict

  • jquery:JavaScript是多執行緒的吗?
  • windows:我们如何使用win32程式檢查檔案是否存在?