配列を昇順で並べ替えようとしています。しかし、コードで上記のエラーが発生します:
a=[]
a=map(int, input().split(' '))
a.sort()
print (a)
ここで私を助けてください...
ERROR : AttributeError: 'map' object has no attribute 'sort'
In python 3 map
はリストを返しません。代わりに、イテレータオブジェクトを返します。これは、sort
がlist
の属性であるためです。オブジェクト、属性エラーが発生しています。
結果をその場で並べ替える場合は、最初にリストに変換する必要があります(これはお勧めしません)。
a = list(map(int, input().split(' ')))
a.sort()
ただし、より良いアプローチとして、反復可能を受け入れてソートされたリストを返すsorted
関数を使用して、結果を元の名前に再割り当てすることができます(推奨)。
a = sorted(map(int, input().split(' ')))