3

Дано число a, например 923 451. Надо получить:

923451
92345
9234
923
92
9
0

Мой код:

q=(923451)
while int(q)>0:
    str(q)-str(q)%10
    print(q)

Ошибка:

not all arguments converted during string formatting

0xdb
  • 51,614
  • str(q)%10 -- непонятно зачем вы пыталась остаток от деления у строки получить. Кроме того, % для строк это оператор форматирования строк, например print("abc = '%s'" % 123) – gil9red Oct 01 '19 at 12:31
  • 2
  • зачем сохранять число во множество? 1. зачем конвертировать в строку? 2. зачем делить строку на 10 и брать остаток?
  • – Эникейщик Oct 01 '19 at 12:31
  • @Эникейщик, (923451) - является целым числом, а не кортежем, как это может показаться ;) – MaxU - stand with Ukraine Oct 01 '19 at 12:53
  • @MaxU Да, точно :) – Эникейщик Oct 01 '19 at 13:08
  • Я понял свою ошибку, благодарю что помогли –  Oct 01 '19 at 13:09