まず、私はPythonが初めてです。 PTVS http://pytools.codeplex.com/ を使用しています。次に、reportlabをインストールしました。次に、 https://github.com/nakagami/reportlab/blob/master/demos/colors/colortest.py#L68 でサンプルデモを実行しますが、
all_colors = reportlab.lib.colors.getAllNamedColors().items()
all_colors.sort() # alpha order by name
エラーが発生しています、dict_items object has no attribute sort
テストしていないが、理論:python3を使用している!
https://docs.python.org/3/whatsnew/3.0.html から
dictメソッドdict.keys()、dict.items()およびdict.values()は、リストの代わりに「ビュー」を返します。たとえば、これは機能しなくなりました。k = d.keys(); k.sort()。代わりにk = sorted(d)を使用してください(これはPython 2.5でも機能し、同様に効率的です)。
私が理解しているように、「ビュー」はイテレーターであり、イテレーターにはソート機能がありません。に変更する
sorted(all_colors)
文書によると
したがって、ヨハンの答えに基づいたトータルソリューションは次のとおりです。
all_colors = sorted(reportlab.lib.colors.getAllNamedColors().items())