Python. Вывод числительных

numbers = [1,2,3,4,5,6,7,8,9]

for number in numbers:
    if number == 1:
        print ('1st')
    elif number == 2:
        print ('2nd')
    elif number == 3:
        print ('3rd')
    else:
        print (number,'th')

Используйте цепочку if-elif-else в цикле для вывода правильного окончания числительного для каждого числа. Программа должна выводить числительные «1st 2nd 3rd 4th 5th 6th 7th 8th 9th»


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

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

Лишний пробел можно убрать так:

print(f"{number}th") 

либо так:

print(number, "th", sep = "")

либо так:

print(str(number) + "th") 

но самый правильный вариант это первый

С помощью словаря можно обойтись без if

numbers = [1,2,3,4,5,6,7,8,9]
dict_ = {1: "st", 2: "nd", 3: "rd"}

for number in numbers:
    print(str(number) + dict_.get(number, "th"))
→ Ссылка
Автор решения: So1der 89
numbers = [1,2,3,4,5,6,7,8,9]
for number in numbers:
    if number == 1:
        print ('1st')
    elif number == 2:
        print ('2nd')
    elif number == 3:
        print ('3rd')
    else:
        print(f"{number}th")
→ Ссылка
Автор решения: Ярослав Кузьмин
for i in [i for i in range(1, 10)]:
    if i == 1: print('1st')
    elif i == 2: print('2nd')
    elif i == 3: print('3rd')
    else: print(str(i) + 'th')

У меня такой вид. А после if elif else сроку обязательно пропускать или лучше так?

→ Ссылка