Мне нужно отсортировать введенные пользователем имена без использования метода сортировки списка. это то, что у меня есть до сих пор, но у меня проблемы с определением «один», «два» и «три». Мне нужна программа, чтобы пройти через каждое письмо, чтобы убедиться, что оно действительно по алфавиту. может ли кто-нибудь помочь?Как перечислять в алфавитном порядке таким образом?
name1=str(input("Enter name #1: "))
name2=str(input("Enter name #2: "))
name3=str(input("Enter name #3: "))
one = name1[0].upper() + name1[1].upper() + name1[2].upper()
two = name2[0].upper() + name2[1].upper() + name2[2].upper()
three = name3[0].upper() + name3[1].upper() + name3[2].upper()
if one < two and two < three:
print("These names in alphabetical order are: ", name1, name2, name3)
elif one < two and three < two:
print("These names in alphabetical order are: ", name1, name3, name2)
elif two < three and three < one:
print("These names in alphabetical order are: ", name2, name3, name1)
elif two < one and one < three:
print("These names in alphabetical order are: ", name2, name1, name3)
elif three < two and two < one:
print("These names in alphabetical order are: ", name3, name2, name1)
else:
print("These names in alphabetical order are: ", name3, name1, name2)
благодарит заранее! Редактировать Моя проблема заключается в определении «одного», «двух» и «трех», чтобы пробегать все буквы на входе. прямо сейчас он пробегает первые три буквы, но если я добавлю следующую букву, и только трехбуквенное имя дадут ему ошибки. и если я использую функцию len, он сообщает мне целое число
Это пахнет как домашнее задание. Почему вам не разрешено использовать функцию «сортировка списка»? что ты уже испробовал? Каковы проблемы, с которыми вы столкнулись. –
Существует метод isalpha для тестирования, если строка по-настоящему соответствует алфавиту –
Что такое 'one',' two' и 'three' for? Зачем сравнивать первые три буквы? Кроме того, вы можете сделать 'one = name1 [: 3] .upper()' или (вероятно, больше похоже на то, что вам нужно) просто 'one = name1.upper()'. И вместо «один <два и два <три» вы можете сделать «один <два <три». _Also_, из 'one <два и три <два', как вы заключаете' name1