Форум программистов, компьютерный форум, киберфорум
Python: Решение задач
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
Рейтинг 4.72/64: Рейтинг темы: голосов - 64, средняя оценка - 4.72
0 / 0 / 0
Регистрация: 03.06.2020
Сообщений: 40

Вывести введённые слова через нижнее подчёркивание

07.11.2021, 22:14. Показов 17554. Ответов 14

Студворк — интернет-сервис помощи студентам
Напишите программу, которая запишет все введенные слова через символ нижнего подчеркивания. Используйте именованные аргументы функции print.
Формат ввода:
Вводится количество слов, затем сами слова.
Формат вывода:
Выведите слова через символ нижнего подчеркивания.

Ввод:
5
the
house
that
jack
built

Вывод:
the_house_that_jack_built

Пробовал так:
Python
1
2
3
4
5
6
s = ''
 
for i in range(int(input()) - 1):
    s += input() + '_'
 
print(s, input())
И так:
Python
1
2
3
4
5
6
count, strings = int(input()), []
 
for i in range(count):
    strings.append(input())
 
print(*strings, sep='_')
Линтер выдаёт ошибку с комментарием, что надо использовать именованные аргументы функции print.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
07.11.2021, 22:14
Ответы с готовыми решениями:

Убрать слэш и нижнее подчеркивание на кнопках
Приветствую! Помогите разобраться, уже который день штудирую интернет и так не понял, как можно с кнопок в ТГ боте на aiogram, убрать слэш...

Проверка на соответствие "два слова через нижнее подчёркивание"
Ребят помогите составить регулярное выражение т.к. я в них вообще ничего не понимаю. В общем нужна проверка на полученные данные, чтобы...

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

14
1956 / 874 / 352
Регистрация: 05.09.2021
Сообщений: 1,387
07.11.2021, 23:10
Viikki,
Python
1
print('_'.join(input() for _ in range(int(input()))))
0
0 / 0 / 0
Регистрация: 03.06.2020
Сообщений: 40
08.11.2021, 08:37  [ТС]
Цитата Сообщение от anton78spb Посмотреть сообщение
Viikki,
Python
1
print('_'.join(input() for _ in range(int(input()))))
И линтер всё так же пишет: «Используйте именованные аргументы функции print»
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
08.11.2021, 09:04
end='_'
1
0 / 0 / 0
Регистрация: 03.06.2020
Сообщений: 40
08.11.2021, 17:47  [ТС]
Ахах, увы, но нет. Попробовал ещё так модифицировать код из сообщения выше, чтобы заюзать именованный аргумент, но линтер выдаёт то же самое.
Python
1
print('_'.join(input() for _ in range(int(input()) - 1)), input(), sep='_')
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
08.11.2021, 17:51
Цитата Сообщение от Viikki Посмотреть сообщение
увы, но нет
Конечно нет. Ты вообще понимаешь, что происходит в твоем коде? Тут sep вообще ничего не делает

Добавлено через 1 минуту
Хотя нет, делает. Но не так
0
0 / 0 / 0
Регистрация: 03.06.2020
Сообщений: 40
08.11.2021, 17:51  [ТС]
Цитата Сообщение от Viikki Посмотреть сообщение
Ахах, увы, но нет. Попробовал ещё так модифицировать код из сообщения выше, чтобы заюзать именованный аргумент, но линтер выдаёт то же самое.
Python
1
print('_'.join(input() for _ in range(int(input()) - 1)), input(), sep='_')
UPD: оказалось, в задании нужно было использовать именно несколько именованных аргументов (), просто нужно было добавить end...
Python
1
print('_'.join(input() for _ in range(int(input()) - 1)), input(), sep='_', end='')

Не по теме:

Сам спросил, сам ответил

0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
08.11.2021, 17:53
Цитата Сообщение от Viikki Посмотреть сообщение
Сам спросил, сам ответил
Тогда ответь - зачем тут джойн?

Добавлено через 17 секунд
Python
1
print(*(input() for _ in range(int(input()))), sep='_')
1
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38223 / 21155 / 4314
Регистрация: 12.02.2012
Сообщений: 34,766
Записей в блоге: 14
08.11.2021, 17:53
Python
1
sep="_"
0
0 / 0 / 0
Регистрация: 03.06.2020
Сообщений: 40
08.11.2021, 17:55  [ТС]
Цитата Сообщение от iSmokeJC Посмотреть сообщение
Конечно нет. Ты вообще понимаешь, что происходит в твоем коде? Тут sep вообще ничего не делает

Добавлено через 1 минуту
Хотя нет, делает. Но не так
Я понимаю, что там делает sep — он разделяет знаком _ перебранную группу слов (каждое из которых уже отделено знаком _) после цикла и введённое последнее слово. Мне просто надо было sep куда-то впихнуть, с этим кодом ничего лучше не придумал)

Добавлено через 1 минуту
Цитата Сообщение от iSmokeJC Посмотреть сообщение
Тогда ответь - зачем тут джойн?

Добавлено через 17 секунд
Python
1
print(*(input() for _ in range(int(input()))), sep='_')
Join склеивает все элементы списка/массива (в Python списки, если правильно помню) в строку, разделяя их символом в кавычках (_ в данном случае)
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
08.11.2021, 17:55
Цитата Сообщение от Viikki Посмотреть сообщение
надо было sep куда-то впихнуть
Джойн склеивает список через указанный разделитель. sep указывает принту через какой разделитель выводить. Одно из двух. См. пост 8
0
0 / 0 / 0
Регистрация: 03.06.2020
Сообщений: 40
08.11.2021, 17:58  [ТС]
Цитата Сообщение от iSmokeJC Посмотреть сообщение
Джойн склеивает список через указанный разделитель. sep указывает принту через какой разделитель выводить. Одно из двух. См. пост 8
Я понимаю, просто в том примере нельзя было склеивать всё в строку при помощи join'а, надо было использовать именованные аргументы print'а, поэтому, чтобы долго не думать, я взял полученную после join'а строку без последнего слова и строку с последним словом, а затем вывел эти строки через sep. Понятно, что не бест практис, просто быстро изменил код
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
08.11.2021, 18:00
Цитата Сообщение от Viikki Посмотреть сообщение
быстро изменил код
Джойн удалить быстрее )))
0
0 / 0 / 0
Регистрация: 03.06.2020
Сообщений: 40
08.11.2021, 18:02  [ТС]
Цитата Сообщение от iSmokeJC Посмотреть сообщение
Джойн удалить быстрее )))
Возможно, не спорю))
0
0 / 0 / 0
Регистрация: 20.11.2024
Сообщений: 4
20.11.2024, 16:15
А вот более простой код
Python
1
2
3
4
5
6
a = int(input())
for i in range(a - 1):
    s = input()
    print(s, end='_')
s = input()
print(s, end='')
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
20.11.2024, 16:15

Вывести только последнюю часть url-а и заменить пробелы на нижнее подчеркивание
Еще вопрос. Собственно есть в пути название, которое выводится по-русски. Ссылка имеет вид -...

В строку через пробел вводятся слова. Отсортировать введенные слова по алфавиту. Результат вывести в виде столбца.
В строку через пробел вводятся слова. Отсортировать введенные слова по алфавиту. Результат вывести в виде столбца.

Нижнее подчеркивание
Как организовать нижнее подчеркивание? (C# WPF) Добавлено через 45 минут Нашел решение: Для динамического изменения выделенного...

Нижнее подчеркивание в именах переменых
Корректно ли в PHP использовать в именах переменных символы нижнего подчеркивания ? например: $id_news_get где то...

В Label не отображается нижнее подчеркивание
Здравствуйте! Столкнулся с такой проблему, что у меня в Label должен быть текст примерно такого формата: "C#_WPF". Т.е. между...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Новые блоги и статьи
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU. Опрашиваются регистры. . .
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка: Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман. Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
мат медиц модель 30. презентация проекта
anaschu 27.08.2026
хоп хоп хоп хидахоп, а я кладую))
Как у меня протекала болезнь
zorxor 27.08.2026
Здравствуйте, друзья! Эта запись блога предназначена именно для вас - для моих дорогих друзей, которые знали меня лично. Чтобы ответить на вопрос - а что же со мной произошло на самом деле? Я учился. . .
Нашел вот забавное видео о измерениях. Лучшее что я видел на эту тему
kumehtar 26.08.2026
ILETXiw9bMQ Основная суть и тезисы по измерениям: 0D (Нулевое измерение): точка, не имеющая длины, ширины, высоты или объема. Объект не может перемещаться в 0D. 1D (Первое измерение):. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru