파이썬에서 일부 키와 값으로 사전을 만드는 코드가 있습니다. 그러나 값을 추가 할 때와 동일한 순서로 값을 정렬해야합니다. 따라서 코드파이썬 사전 키 순서
def getdataready():
data = {}
data["cputemp"] = str(getcputemp())
data["cas"] = str(datetime.datetime.now()).replace(" ", "%20")
data["fan"] = str(fanstate())
data["pstemp"] = str(getPStemp())
#there are some more keys added
return data
사전을 선언하고이를 반환합니다. 그러나 코드를 실행할 때 반환 된 사전은 규칙 (pstemp, cas, cputemp, venkovniteplota, fan, pokojovatelota)없이 순서가 지정됩니다. 어떻게 선언 순서 (cputemp, cas, fan, pstemp, .. .)? 이 순서대로 사전이 웹 서버로 보내지기 때문에 (http://parman.moxo.cz/index.php?page=info wget과 사전을 URL로 변환하고 PHP를 $ GET의 값으로 사용함) 수신 된 것과 동일한 순서로 표시됩니다. 이 순서대로 가지고 싶습니다. 고마워요.
또한 메소드 이름'def get_data_ready()'에 snake case를 사용하십시오. –
@ 카스라 404가 맞지 않습니까? – parman
사전의 항목 순서를 제어하려면'collections' 모듈에서'OrderedDict'를 사용할 수 있습니다. iterating 할 때 데이터의 원래 삽입 순서를 정확하게 유지합니다. : 'from collections 가져 오기 OrderedDict data = OrderedDict()'더 읽기 https://docs.python.org/3.4/library/collections.html#collections.OrderedDict – Kasramvd