Повтор ввода, с while и массивами - PullRequest
0 голосов
/ 13 сентября 2018

Я пытаюсь сделать код, в котором он запрашивает длину слова (n, n <= 100000), а затем само слово, пока n не станет равным нулю и не завершит обработку; вывод запрашивает все слова в обратном порядке. </p>

Entrance         Output  

     7           odacova        
   avocado        esuoh
     5
   house
     0

Вот код, который я пытался сделать:

numeros = []
word = []
for i in numeros:
   while i <= 100000:
      n = int(input())  #always ask the length and the word
      s = str(input())
      numeros.append(n)
      word.append(s)
      if i == 0:
         for w in word:
            print(w[::-1])   #output with the words reversed
            break

1 Ответ

0 голосов
/ 13 сентября 2018

Это потому, что ваш массив numeros пуст для начала, поэтому ваш цикл for даже не запустится. Я также очень полагаюсь на ваше описание того, что вы хотите, так как ваш код сильно отличается от вашего описания. Вот что должно работать:

numeros = []
words = []

while True:
    n = int(input())    # get number of characters input
    if n == 0:    # if input is 0, print all reversed words and exit the program
        for w in words:
            print(w[::-1])   #output with the words reversed
        break
    if n <= 100000:
        s = str(input())    # get word input
        numeros.append(n)
        words.append(s)
...