Форум сайта python.su
Ниже приведено (мое) решение одной маленькой задачи
fname = raw_input("Enter file name: ") if fname == "": fh = open('romeo.txt') else: fh = open(fname) lst = list() for line in fh: junk = line.split() for w in junk: lst.append(w) lst.sort() print lst
['Arise', 'But', 'It', 'Juliet', 'Who', 'already', 'and', 'and', 'and', 'breaks', 'east', 'envious', 'fair', 'grief', 'is', 'is', 'is', 'kill', 'light', 'moon', 'pale', 'sick', 'soft', 'sun', 'sun', 'the', 'the', 'the', 'through', 'what', 'window', 'with', 'yonder']
['Arise', 'But', 'It', 'Juliet', 'Who', 'already', 'and', 'breaks', 'east', 'envious', 'fair', 'grief', 'is', 'kill', 'light', 'moon', 'pale', 'sick', 'soft', 'sun', 'the', 'through', 'what', 'window', 'with', 'yonder']
Офлайн
я так понимаю задача получить отсортированный список уникальных слов. Однако вы ничего не делаете что бы организовать уникальность. К тому же вы сортируете список после каждого элемента - его нужно сортировать один раз - в самом конце.
Задачу грамотнее всего решить используя не списки, а множества.
Офлайн
>>> text = 'A B C a b c A B C D a b c' >>> >>> out = sorted(set(text.split())) >>> out ['A', 'B', 'C', 'D', 'a', 'b', 'c'] >>>
Отредактировано py.user.next (Сен. 19, 2016 03:52:05)
Офлайн