這篇文章帶給大家的內容是關於python如何讓字典保持有序(程式碼),有一定的參考價值,有需要的朋友可以參考一下,希望對你有幫助。
1、需求
我們想建立一個字典,同時當對字典做迭代或序列化操作時,也能控制其中元素的順序。2、解決方案
要控製字典中元素的順序,可以使用collections模組中的OrderedDict類別。當字典做迭代時,它會嚴格按照元素初始添加的順序進行。
from collections import OrderedDict d=OrderedDict() d['a']=1 d['b']=2 d['c']=3 d['d']=4 #根据插入删除输出 for key in d: print(key,d[key])
結果:
a 1 b 2 c 3 d 4
當想要建立一個映射結構以便稍後對其做序列化或編碼成另一種格式時,OrderedDict就顯得特別有用。例如:如果想在進行JSON編碼時精確控制各字段的順序,那麼只要先在OrderedDict中建立資料就可以了:
from collections import OrderedDict import json d=OrderedDict() d['a']=1 d['b']=2 d['c']=3 d['d']=4 j=json.dumps(d) print(j)
結果:
{"a": 1, "b": 2, "c": 3, "d": 4}OrderedDict內部維護了一個雙向鍊錶,它會根據元素加入的順序來排列鍵的位置。第一個新加入的元素被放置在鍊錶的結尾,接下來對已存在的鍵做重新賦值,不會改變鍵的位置。
請注意:OrderedDict的大小是普通字典的2倍。這是由於它額外創建的鍊錶所致。因此,如果打算建構一個涉及大量OrderedDict實例的資料結構(例如從CSV檔案讀取100 000行行內容到OrderedDict清單中),那麼需要認證對應用做需求分析,從而判斷使用OrderedDict所帶來的好處是否能超越因額外的記憶體開銷所帶來的缺點。
#以上是python如何讓字典保持有序(程式碼)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

Python是解釋型語言,但也包含編譯過程。 1)Python代碼先編譯成字節碼。 2)字節碼由Python虛擬機解釋執行。 3)這種混合機制使Python既靈活又高效,但執行速度不如完全編譯型語言。

UseeAforloopWheniteratingOveraseQuenceOrforAspecificnumberoftimes; useAwhiLeLoopWhenconTinuingUntilAcIntiment.forloopsareIdealForkNownsences,而WhileLeleLeleLeleLeleLoopSituationSituationsItuationsItuationSuationSituationswithUndEtermentersitations。

pythonloopscanleadtoerrorslikeinfiniteloops,modifyingListsDuringteritation,逐個偏置,零indexingissues,andnestedloopineflinefficiencies

forloopsareadvantageousforknowniterations and sequests,供應模擬性和可讀性;而LileLoopSareIdealFordyNamicConcitionSandunknowniterations,提供ControloperRoverTermination.1)forloopsareperfectForeTectForeTerToratingOrtratingRiteratingOrtratingRitterlistlistslists,callings conspass,calplace,cal,ofstrings ofstrings,orstrings,orstrings,orstrings ofcces

pythonisehybridmodeLofCompilation和interpretation:1)thepythoninterpretercompilesourcecececodeintoplatform- interpententbybytecode.2)thepythonvirtualmachine(pvm)thenexecutecutestestestestestesthisbytecode,ballancingEaseofuseEfuseWithPerformance。

pythonisbothinterpretedAndCompiled.1)它的compiledTobyTecodeForportabilityAcrosplatforms.2)bytecodeisthenInterpreted,允許fordingfordforderynamictynamictymictymictymictyandrapiddefupment,儘管Ititmaybeslowerthananeflowerthanancompiledcompiledlanguages。

在您的知識之際,而foroopsareideal insinAdvance中,而WhileLoopSareBetterForsituations則youneedtoloopuntilaconditionismet

ForboopSareSusedwhenthentheneMberofiterationsiskNownInAdvance,而WhileLoopSareSareDestrationsDepportonAcondition.1)ForloopSareIdealForiteratingOverSequencesLikelistSorarrays.2)whileLeleLooleSuitableApeableableableableableableforscenarioscenarioswhereTheLeTheLeTheLeTeLoopContinusunuesuntilaspecificiccificcificCondond


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

Safe Exam Browser
Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

ZendStudio 13.5.1 Mac
強大的PHP整合開發環境

記事本++7.3.1
好用且免費的程式碼編輯器

VSCode Windows 64位元 下載
微軟推出的免費、功能強大的一款IDE編輯器

MinGW - Minimalist GNU for Windows
這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。