для цикла, кортеж вне диапазона

#python #python-3.x #indexing #range

#python #python-3.x #индексирование #диапазон

Вопрос:

Не совсем уверен, что вызывает эту ошибку, используя 30-дневный вызов Hackerrank на 5-й день, и, похоже, я не могу изменить это, чтобы это сработало — я не слишком знаком с заполнителями, но имею базовое представление о том, как они работают.

 #!/bin/python3
import sys

n = int(input().strip())
for i in range(1, 10):
    answer = n * i
    print("{} x {} = {}".format((n, i, answer)))
  

Ошибка:

 Traceback (most recent call last):
  File "solution.py", line 9, in <module>
    print("{} x {} = {}".format((n, i, answer)))
IndexError: tuple index out of range
  

Комментарии:

1. print("{} x {} = {}".format(n, i, answer))

Ответ №1:

 n = int(input().strip())
for i in range(1, 10):
    answer = n * i
    print("{} x {} = {}".format(n, i, answer))  # changed here 
  

У вас был кортеж for, n,i,answer который был передан в format() . Вам просто нужно передать то, что вы хотите распечатать и отформатировать в функцию format() , не нужно оборачивать это в кортеж.