
Программа из введенной строки должна выписать все слова в столбик, а потом из этой строки выписать самое длинное слово, код для получения столбца слов уже готов, а вот как вручную сделать код для поиска самого большого слова я не знаю.
Помогите пожалуйста.
Вот сам код:
str1 = str(input()) word = "" words = [] k = 0 for i in str1: if i != " ": word += i else: words.append(word) word = "" for j in words: print(j) for j in words: if j > words(k): j += 1 else: k += 1
2 Answers


В соответствии к комментарию к ответу Andrio Skur:
words = ['a', 'asa1', 'dd', '111'] max_len_word = words[0] for i in range(1, len(words)): word = words[i] if len(word) > len(max_len_word): max_len_word = word print(max_len_word) # asa1

Вот так:
def str_split(s): words = [] buf = '' for char in s: if char == ' ': if buf: words.append(buf) buf = '' else: buf += char if buf: words.append(buf) return words def words_print(words): for word in words: print(word) def len_word(word): i = 0 for _ in word: i += 1 return i def find_max(words): temp = 0, '' for word in words: word_length = len_word(word) if word_length > temp[0]: temp = word_length, word return temp[1] words = str_split(input()) words_print(words) print('Max:', find_max(words))