저는 학생 인턴으로 Django 프로젝트를 작성하고 있습니다. 내 파이썬 파일에 다음과 같은 데이터 목록 사전이 있습니다.
list_sequences = {'01': [["Calcul Red Shift", "2014-09-24", "Running"]],
'02': [["Calcul Dérive", "2014-09-22", "Stopped"]],
'03': [["Calcul simple", "2014-04-12", "Paused"]],
'04': [["Calcul Mental", "2014-02-14", "Failed"]],
'05': [["Sauvegarde des données", "2014-12-22", "Running"]],
'06': [["Envoi des données", "2014-07-17", "Stopped"]],
'07': [["Calcul de LA question", "2015-01-06", "Running"]],
'08': [["Refactorisation", "2014-09-24", "Paused"]],
'09': [["Cuisson de choucroute", "2013-11-13", "Running"]],
'10': [["Ecriture du rapport", "2014-02-03", "Running"]],
'11': [["Nettoyage des fichiers", "2014-09-24", "Paused"]],
'12': [["Création des utilisateurs", "2015-01-06", "Failed"]]
}
보시다시피 각 요소의 키는 01, 02, ...
또한 문자열을 사용하기 때문에 이중 [[]]을 사용합니다. 그렇지 않으면 웹 페이지에 표 셀에 한 문자 만 표시됩니다.
내가하고 싶은 것은 전체 사전을 날짜별로 정렬하는 것입니다.
다음을 시도했습니다.
list_sequences = collections.OrderedDict(sorted(list_sequences.items(), key=lambda e: e[0][1]))
그리고 이것도 :
list_sequences = collections.OrderedDict(sorted(list_sequences.items(), key=lambda e: datetime.datetime.strptime(e[0][1], '%Y-%m-%d')))
그러나 작동하지 않는 것 같습니다. 첫 번째는 내 목록을 이상한 방식으로 정렬하고 두 번째는 나를 던집니다.
time data '0' does not match format '%Y-%m-%d'
어떤 생각?
고마워요!
dict.items()
(키, 값) 쌍을 반환하므로 값은 e[1]
0 ( e[0]
)이 아닌 인덱스 1 ( )에 있습니다. 당신은 변경할 필요 e[0][1]
에 e[1][0][1]
.
데모:
>>> OrderedDict(sorted(list_sequences.items(), key=lambda e:datetime.strptime(e[1][0][1], '%Y-%m-%d')))
OrderedDict([('09', [['Cuisson de choucroute', '2013-11-13', 'Running']]), ('10', [['Ecriture du rapport', '2014-02-03', 'Running']]), ('04', [['Calcul Mental', '2014-02-14', 'Failed']]), ('03', [['Calcul simple', '2014-04-12', 'Paused']]), ('06', [['Envoi des donn\xc3\xa9es', '2014-07-17', 'Stopped']]), ('02', [['Calcul D\xc3\xa9rive', '2014-09-22', 'Stopped']]), ('11', [['Nettoyage des fichiers', '2014-09-24', 'Paused']]), ('01', [['Calcul Red Shift', '2014-09-24', 'Running']]), ('08', [['Refactorisation', '2014-09-24', 'Paused']]), ('05', [['Sauvegarde des donn\xc3\xa9es', '2014-12-22', 'Running']]), ('12', [['Cr\xc3\xa9ation des utilisateurs', '2015-01-06', 'Failed']]), ('07', [['Calcul de LA question', '2015-01-06', 'Running']])])
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다