Rstrip, разбить и отсортировать список из входного текстового файла - PullRequest
0 голосов
/ 10 апреля 2020

Я новичок с python. Я пытаюсь сократить пространство, разбить и добавить список в слова, а затем отсортировать по алфавиту. Я не понимаю, что я делаю неправильно.

fname = input("Enter file name: ")
fh = open(fname)
lst = list(fh)
for line in lst:
   line = line.rstrip()
   y = line.split()
   i = lst.append()


k = y.sort()
print y 

Ответы [ 2 ]

1 голос
/ 11 апреля 2020

Мне удалось исправить мой код и вывод ожидаемого результата. Это то, что я надеялся закодировать:

name = input('Enter file: ')
handle = open(name, 'r')
wordlist = list()
for line in handle:
    words = line.split()
    for word in words:
        if word in wordlist: continue
        wordlist.append(word)

wordlist.sort()
print(wordlist)
0 голосов
/ 10 апреля 2020

Если вы используете python 2.7, я считаю, что вам нужно использовать raw_input() в Python 3.X правильно использовать input(). Кроме того, вы неправильно используете append(), метод добавления списков - Добавить.

fname = raw_input("Enter filename: ") # Stores the filename given by the user input
fh = open(fname,"r") # Here we are adding  'r' as the file is opened as read mode
lines = fh.readlines() # This will create a list of the lines from the file

# Sort the lines alphabetically
lines.sort()

# Rstrip each line of the lines liss
y = [l.rstrip() for l in lines]

# Print out the result
print y

Пожалуйста, дайте мне знать, помогло ли это вам. Спасибо!

...