2016-01-30 1 views
-5

Я хочу найти слова в тексте, который начинается с буквы. Например, «B», и после их поиска я хочу заказать их в алфавитном порядке. С питономНайти t все слова в тексте, начиная с t letter b. Показать t в алфавитном порядке t заказать в Python

+2

Итак, что вы пробовали? С какими проблемами вы столкнулись? – Christoph

ответ

1
def get_words(filename, char) 
    f = open(filename) 
    all_words = [] 
    word_sep = ' ' # assuming words are separated by space in your file 
    for line in f: 
     line_words = [word for word in line.rstrip().split(word_sep) if word.startswith(char)] 
     all_words.extend(line_words) 
    f.close() 
    return sorted(all_words) 

get_words('words.txt', 'B') 
  • Вы открываете файл.
  • Читать строку после строки
  • Вы разделить строку на слова, основанные на том, что разделяет слова (например, запятая, пробел, и т.д.)
  • Идешь по списку слов, выбирая те, которые начинаются с символа, который требуется и добавьте каждое слово в список
  • Сортировка списка, когда вы прошли через файл
-1
lst = [] 
filename = raw_input('Enter filename') 
f = open(filename) 
for line in f: 
    line = line.rstrip() 
    line = line.split() 
    for word in line: 
     if "B" in word: 
      lst.append(word) 
lst.sort() 
print lst 

Извлечение строки из файла. Разделите строку в список, запустите цикл в списке и проверьте, содержит ли слово в списке букву B. Если это так, добавьте слово в пустой список. Сортируйте прилагаемый список и распечатайте его.