#python #list #input
Вопрос:
Когда используется input(), результирующая строка учитывает символы внутри однозначно, скажем:-
list(input(""))
1,2,3,4,5,78
['1', ',', '2', ',', '3', ',', '4', ',', '5', ',', '7', '8']
Что, если я хочу получить 78 в результате, что мне делать?
Комментарии:
1. Он использует
list()
это, превращая последовательность символов в список каждого из этих символов. Вместо того, чтобы использоватьlist()
, просто не делайте этого, тогда вы получите любую строку, которую вы предоставили в качестве входных данных. Если ваша строка представляет собой список, разделенный запятыми, используйте, напримерitemstring=input()
, и затемitems=itemstring.split(“,”)
, чтобы получить список элементов между запятыми
Ответ №1:
Вы можете использовать .split(',')
для переформатирования введенной строки в список чисел (в виде строк). Вот так:
l = input().split(',')
Подробнее:
Функция ввода получает строку от пользователя, вызов split для этой строки позволяет нам разделить строку на список значений, разделенных разделителем (здесь мы использовали запятую). То, что вы делали в своем исходном коде, заключалось в разделении строки на список отдельных символов. Подробнее о типах читайте здесь.
Комментарии:
1. Пожалуйста, уточните
2. @DrDexterMorganMD добавил немного деталей
Ответ №2:
Попробуй:
input("").split(",")
Комментарии:
1. Зачем передавать аргумент в
input
? По умолчанию нет запроса