Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Как пронумеровать строки в питоне при выводе с for _ in range

Оля Левчук Знаток (357), закрыт 1 год назад
Например, у меня есть программа:
a = int(input("Введите целое число"))
for _ in range(a):
print('привет!')
Что нужно добавить, чтобы при введении целого числа (например 5) мне выдавало не:
привет!
привет!
привет!
привет!
привет!
а выдавало
1.привет!
2.привет!
3.привет!
4.привет!
5.привет!
помогите пожалуйста, очень нужно
Лучший ответ
Папа Высший разум (145098) 1 год назад
Если число маленькое, то так:
 a = int(input("Введите целое число: "))
print(*map('%d.%s'.__mod__, enumerate(('привет!',) * a, 1)), sep = '\n')

А если большое, то лучше так:
 from itertools import count, repeat
a = int(input("Введите целое число: "))
print('\n'.join(map('%d.%s'.__mod__, zip(count(1), repeat('привет!', a)))))

Или так:
 from itertools import count, repeat
a = int(input("Введите целое число: "))
print('\n'.join(map('.'.join, zip(map(str, count(1)), repeat('привет!', a)))))

В принципе, тут и переменная не нужна:
 print(*map('%d.%s'.__mod__, enumerate(('привет!',) * int(input("Введите целое число: ")), 1)), sep = '\n') 
 from itertools import count, repeat
print('\n'.join(map('%d.%s'.__mod__, zip(count(1), repeat('привет!', int(input("Введите целое число: ")))))))
 from itertools import count, repeat
print('\n'.join(map('.'.join, zip(map(str, count(1)), repeat('привет!', int(input("Введите целое число: ")))))))
Остальные ответы
Celtic Hammer Мудрец (16717) 1 год назад
 a = int(input("Введите целое число"))  
for i in range(a):
print(i + 1, 'привет!')
Похожие вопросы