2015-01-20 33 views

Odpowiedz

17

nie testowałem, ale teoria: używasz python3!

Od https://docs.python.org/3/whatsnew/3.0.html

metody dict dict.keys(), dict.items() i dict.values ​​() return „widoki” zamiast list. Na przykład to już nie działa: k = d.keys(); k.sort(). Zamiast tego użyj k = posortowane (d) (działa to również w Pythonie 2.5 i jest tak samo wydajne).

jak rozumiem, "widok" jest iteratorem, a iterator nie ma funkcji sortowania. Zmień go

sorted(all_colors) 

zgodnie z dokumentacją

+0

dziękuję był pomocny :) – niloofar

1

Tak kompleksowe rozwiązanie oparte na odpowiedź Johana jest:

all_colors = sorted(reportlab.lib.colors.getAllNamedColors().items()) 
Powiązane problemy