首页 > 解决方案 > 重组两个列表以创建第三个

问题描述

从两个列表(liste_1liste_2)中,我想获得第三个列表,该列表保留liste_1(与 有点不同liste_2)的内容,同时考虑liste_2.

我不知道该怎么做……如果您有解决方案可以提供给我,那就太好了。提前致谢。

liste_1 = ['1. Niveau de classe, Durée, Titre de la progression, Séquence n° NUM, Incitation', '2. Demande DEMANDE', '3. Consignes', '4. Contraintes', '5. Notions abordées', '6. Entrée(s) principale(s) du programme', '7. Questionnement', '8. Que vont apprendre les élèves', '9. Champ(s) des pratiques plastiques', "10. Question(s) d'enseignement", '11. Vocabulaire', '12. Questions posées aux élèves', "13. Travaux d'artistes (références)", '14. Evaluation', '15. Observations', '16. Prolongements possibles']
    
liste_2 = ['1. Niveau de classe, Durée, Titre de la progression, Séquence n°, Incitation', "13. Travaux d'artistes (références)", '11. Vocabulaire', '2. Demande', '3. Consignes', '4. Contraintes', '5. Notions abordées', '6. Entrée(s) principale(s) du programme', '7. Questionnement', '8. Que vont apprendre les élèves', '9. Champ(s) des pratiques plastiques', "10. Question(s) d'enseignement", '12. Questions posées aux élèves', '14. Evaluation', '15. Observations', '16. Prolongements possibles']
    
### I'd like to obtain as result list_3 from the content of list_1 and list_2 ###
liste_3 = ['1. Niveau de classe, Durée, Titre de la progression, Séquence n° NUM, Incitation', "13. Travaux d'artistes (références)", '11. Vocabulaire', '2. Demande DEMANDE', '3. Consignes', '4. Contraintes', '5. Notions abordées', '6. Entrée(s) principale(s) du programme', '7. Questionnement', '8. Que vont apprendre les élèves', '9. Champ(s) des pratiques plastiques', "10. Question(s) d'enseignement", '12. Questions posées aux élèves', '14. Evaluation', '15. Observations', '16. Prolongements possibles']

标签: pythonpython-3.x

解决方案


liste_2您可以通过获取第一个之前的值来生成排序字典.;然后可以使用此字典进行排序liste_1

liste_2_order = { e.split('.')[0] : i for i, e in enumerate(liste_2) }
liste_1.sort(key = lambda v:liste_2_order[v.split('.')[0]])
print(liste_1)

输出:

[
 '1. Niveau de classe, Durée, Titre de la progression, Séquence n° NUM, Incitation',
 "13. Travaux d'artistes (références)",
 '11. Vocabulaire',
 '2. Demande DEMANDE',
 '3. Consignes',
 '4. Contraintes',
 '5. Notions abordées',
 '6. Entrée(s) principale(s) du programme',
 '7. Questionnement',
 '8. Que vont apprendre les élèves',
 '9. Champ(s) des pratiques plastiques',
 "10. Question(s) d'enseignement",
 '12. Questions posées aux élèves',
 '14. Evaluation',
 '15. Observations',
 '16. Prolongements possibles'
]

推荐阅读