4

Помогите разобраться в if elif else)

Заранее извиняюсь за тупость вопроса для настоящих программистов,

На фото мой код , он по идее правильный но не могу понять как сделать эту задачу ибо тут надо вывести два слова, я так понимаю python увидел что условия выполнены и дальше не идет проверять, в общем если нетрудно подскажите. Заранее всем спасибо. Забыл сказать что я 2 недели это изучаю)
upd: спасибо за помощь всем, особенно 1Sergey80

Правила сообщества

Публиковать могут пользователи с любым рейтингом. Однако!


Приветствуется:

• уважение к читателям и авторам

• конструктивность комментариев

• простота и информативность повествования

• тег python2 или python3, если актуально

• код публиковать в виде цитаты, либо ссылкой на специализированный сайт


Не рекомендуется:

• допускать оскорбления и провокации

• распространять вредоносное ПО

• просить решить вашу полноценную задачу за вас

• нарушать правила Пикабу

15
Автор поста оценил этот комментарий
После вывода минимального делайте не elif, а просто if
раскрыть ветку (1)
4
Автор поста оценил этот комментарий
О спасибо большое вам!!!
показать ответы
15
Автор поста оценил этот комментарий
После вывода минимального делайте не elif, а просто if
раскрыть ветку (1)
2
Автор поста оценил этот комментарий
Пикабу как всегда помог)
4
Автор поста оценил этот комментарий
О спасибо большое вам!!!
раскрыть ветку (1)
2
Автор поста оценил этот комментарий
Кажется я наконец-то понял)
показать ответы
11
DELETED
Автор поста оценил этот комментарий

# Запрос у пользователя названий трёх городов

city1 = input("Введите название первого города: ")

city2 = input("Введите название второго города: ")

city3 = input("Введите название третьего города: ")

# Собираем названия городов в список

cities = [city1, city2, city3]

# Находим самое короткое и самое длинное название города

shortest_city = min(cities, key=len)

longest_city = max(cities, key=len)

# Выводим результаты

print("Самое короткое название города:", shortest_city)

print("Самое длинное название города:", longest_city)

1. Программа запрашивает у пользователя ввод названий трёх городов и сохраняет их в переменные.

2. Все названия собираются в список cities.

3. С помощью функции min() и max() ищем названия городов с помощью ключа len, который возвращает длину каждого названия.

4. Результаты выводятся на экран.

раскрыть ветку (1)
1
Автор поста оценил этот комментарий
Спасибо
5
Автор поста оценил этот комментарий

If - это начальная проверка условия. Если оно не выполнилось, осуществляется проверка elif - и так далее.

Так что у вас строки 13 и далее недостижимы - отработает одна из проверок в строках 7, 9, 11.

раскрыть ветку (1)
1
Автор поста оценил этот комментарий
Ага, теперь ясно)
показать ответы
Автор поста оценил этот комментарий

... меня терзают смутные подозрения, что тяжело вам будет двигаться в программисты. Мы, помнится, такие задачки лет в 9 на Бейсике на Yamaha MSX решали.

раскрыть ветку (1)
1
Автор поста оценил этот комментарий
Я не боюсь трудностей) может когда нибудь вы мне тоже подскажете ответ на сложный вопрос)
показать ответы
3
Автор поста оценил этот комментарий

Через цикл for сделай, будет гораздо короче код. А так ты увлекся ветвление условных операторов, у тебя выводится только одно значение минимальной длины и дальше условия не проверяются, а это ошибка

раскрыть ветку (1)
1
Автор поста оценил этот комментарий
Понял спасибо большое
1
DELETED
Автор поста оценил этот комментарий

создать словарь, в котором ключ - длина, а значение - само слово
После этого ищем min и max, а после используем их для получения значения

раскрыть ветку (1)
1
Автор поста оценил этот комментарий
Я пока на начальном уровне, спасибо за помощь
0
Автор поста оценил этот комментарий

Тогда делай в цикле перебором по каждому элементу. И на каждой итерации сравнивай текущее значение с самым длинным на текущий момент.

раскрыть ветку (1)
0
Автор поста оценил этот комментарий
Я говорю что не могу пользоваться тем чего не знаю, я в курсе что есть много способов решить задачу, но пока я решаю как умею)
Автор поста оценил этот комментарий

Проблема как раз в том, что порог входа в Питон низкий, но на нём легко писать абсолютный говнокод, и многие на этом и останавливаются.

раскрыть ветку (1)
0
Автор поста оценил этот комментарий
Что посоветуете?
показать ответы
3
Автор поста оценил этот комментарий

Совет, который поможет в дальнейшем: скачайте thonny (среда разработки), если программа не будет получаться, то можно нажимать на debugger (отладчик, он в виде жучка) и дальше нажимать стрелочки, тем самым можно посмотреть, как интерпретатор выполняет ваш код. Однако следует это делать лишь в том случае, если вы сами попробовали, но у вас никак не получается. От слова совсем. Важно развивать алгоритмическое мышление, и помнить, что отладчик не панацея.


Почему Thonny? У него классный отладчик. Советовал школьникам, результат в целом положительный. Визуализация помогает. Мне она в свое время тоже помогла.

раскрыть ветку (1)
0
Автор поста оценил этот комментарий
Спасибо большое
Автор поста оценил этот комментарий

Лучшее решение - это короткий код.
Выше тебе методу уже дали (вообще без if-ов решается)

раскрыть ветку (1)
0
Автор поста оценил этот комментарий
Это все понятно, я не могу пользоваться функциями которых не знаю)
3
Автор поста оценил этот комментарий

Не слушай никого! Раз у тебя возникает гипотеза как решать - у тебя есть будущее в кодинге ;)

раскрыть ветку (1)
0
Автор поста оценил этот комментарий
Спасибо большое
1
Автор поста оценил этот комментарий

Берешь первое название города и предполагаешь что оно самое длинное (переменной max_len присваиваешь его )

Сравниваешь max_len с длиной второго названия города , если второе длиннее присваиваешь max_len его.
и также с третьим городом
По той же схеме с самым коротким написанием.

раскрыть ветку (1)
0
Автор поста оценил этот комментарий
Я как раз так и сделал, просто вместо elif надо было if написать, чтобы второе условие проверить
показать ответы
1
Автор поста оценил этот комментарий
Обязательно по if else? Через sort не проще ль
раскрыть ветку (1)
0
Автор поста оценил этот комментарий
Спасибо за помощь, пока не знаю такого
показать ответы
3
Это стоило 500 монет
Автор поста оценил этот комментарий

Вывести один иф-елс, который выполнится по минималке, сообщит и перекинет на новую строчку, завершить, а потом следом еще один, по максималке. Все.

Зачем ты в один иф-елс пихаешь все сразу?

раскрыть ветку (1)
0
Автор поста оценил этот комментарий
Не знаю если честно зачем я так делаю,я новичок,две недели стаж)
показать ответы
3
Автор поста оценил этот комментарий

name_list=(name1,name2,name3)
longest_word = max(name_list, key=len)
print(longest_word)

Это для самого длинного слова. Для короткого по аналогии. Код не проверял, но должен работать :)

раскрыть ветку (1)
0
Автор поста оценил этот комментарий
Хочу именно понять как это сделать через if elif
показать ответы
3
Автор поста оценил этот комментарий

name_list=(name1,name2,name3)
longest_word = max(name_list, key=len)
print(longest_word)

Это для самого длинного слова. Для короткого по аналогии. Код не проверял, но должен работать :)

раскрыть ветку (1)
0
Автор поста оценил этот комментарий
Я пока на начальном уровне, спасибо за помощь
0
Автор поста оценил этот комментарий

Не начинать с Питона.

раскрыть ветку (1)
Автор поста оценил этот комментарий
Почему то все как раз говорят с него начинать) надо было первым вопросом задать на Пикабу какой язык изучать и запустить волну советов и возмущений)
показать ответы

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества

Недвижимость и ремонт

Теги

Популярные авторы

Сообщества