Как сделать спуск строки каждые два элменета?

У меня есть кортеж, например:

(2, "Крутой чел", 3, "Награда 1")

Мне нужно чтобы получился вывод:

Награда #2 - Крутой чел
Награда #3 - Награда 1

Возможно ли это как то сделать?

Я пробовал обычный for, но получал вывод:

2
Крутой чел
3 
Награда 1

Ответы (3 шт):

Автор решения: sumak

Можно распаковать кортеж в переменные. А потом вывести их в любой последовательности. Примерно так:

# Кортеж
awards = (2, "Крутой чел", 3, "Награда 1")

# Распаковка в переменные
r, b, c, h = awards

# Вывод в любой последовательности и в любом порядке
print(r, b)
print(c, h)
→ Ссылка
Автор решения: dofi4ka

Достаточно пройтись по кортежу с шагом 2 и на каждой итерации находить номер награды и саму награду

awards = (2, "Крутой чел", 3, "Награда 1")
for i in range(0, len(awards), 2):
    awardno = awards[i]
    award = awards[i + 1]
    print(f"Награда #{awardno} - {award}")

Хотя скорее всего намного проще изменить то как именно данные хранятся

→ Ссылка
Автор решения: Qwertiy

tio.run

x = (2, "Крутой чел", 3, "Награда 1")

for i,t in zip(x[::2], x[1::2]):
  print(f"Награда {i}: {t}")
Награда 2: Крутой чел
Награда 3: Награда 1
→ Ссылка