Ввести список через пробел [закрыт]
Закрыт. Этот вопрос необходимо уточнить или дополнить подробностями. Ответы на него в данный момент не принимаются.
Хотите улучшить этот вопрос? Добавьте больше подробностей и уточните проблему, отредактировав это сообщение.
Закрыт 6 лет назад .
Сообщество рассмотрело необходимость повторного открытия этого вопроса 1 год назад и оставило его закрытым:
Исходные причины закрытия не были исправлены
Как ввести список через пробел? Например: 1 2 3 4 5 6.
Отслеживать
задан 7 апр 2017 в 16:14
31 1 1 золотой знак 1 1 серебряный знак 6 6 бронзовых знаков
3 ответа 3
Сортировка: Сброс на вариант по умолчанию
Когда нужно получить список чисел от пользователя, я обычно делаю так:
a = list(map(int, input().split()))
Отслеживать
ответ дан 7 апр 2017 в 16:54
2,548 1 1 золотой знак 15 15 серебряных знаков 31 31 бронзовый знак
Вы можете использовать следующую форму записи:
lst = input().split(';') # где ; - это разделитель (по умолчанию разделитель - пробел) # 1.1;qwerty;2;teststr;3.2;lol print(line) # ['1.1', 'qwerty', '2', 'teststr', '3.2', 'lol']
Эта запись вернёт вам объект типа list, разделённый по точке с запятой. Как вернуть список, разделённый по пробелам, я думаю догадаться не сложно.
Также вы можете использовать регулярные выражения:
import re lst = re.findall(r'\w+') #также подойдёт паттерн '\S+'
Ну а для более точного совпадения можно написать такой паттерн:
r'[^ ]+' # всё, кроме пробела
Вообще, регулярные выражения мощный инструмент. Рекомендую вам если не глубоко освоить, то хотя бы базово ознакомиться с ним.
Надеюсь, смог помочь. Всего доброго!
Array.prototype.join()
Метод join() объединяет все элементы массива (или массивоподобного объекта) в строку.
Интерактивный пример
Синтаксис
arr.join([separator])
Параметры
separator Необязательный
Определяет строку, разделяющую элементы массива. В случае необходимости тип разделителя приводится к типу Строка. Если он не задан, элементы массива разделяются запятой ‘,‘. Если разделитель — пустая строка, элементы массива ничем не разделяются в возвращаемой строке.
Возвращаемое значение
Строка, содержащая все элементы массива. Если arr.length == 0 , то будет возвращена пустая строка.
Описание
Преобразует все элементы массива в строки и объединяет их в одну большую строку. Элемент массива с типом undefined или null преобразуется в пустую строку.
Примеры
Соединение массива четырьмя различными способами
В следующем примере создаётся массив a с тремя элементами, затем они четыре раза объединяются в строку: с использованием разделителя по умолчанию, запятой с пробелом, плюса, окружённого пробелами, и пустой строки.
var a = ["Ветер", "Дождь", "Огонь"]; var myVar1 = a.join(); // присвоит 'Ветер,Дождь,Огонь' переменной myVar1 var myVar2 = a.join(", "); // присвоит 'Ветер, Дождь, Огонь' переменной myVar2 var myVar3 = a.join(" + "); // присвоит 'Ветер + Дождь + Огонь' переменной myVar3 var myVar4 = a.join(""); // присвоит 'ВетерДождьОгонь' переменной myVar4
Соединение элементов массивоподобного объекта
В следующем примере соединяется массивоподобный объект (в данном случае список аргументов функции) с использованием вызова Function.prototype.call для Array.prototype.join .
function f(a, b, c) var s = Array.prototype.join.call(arguments); console.log(s); // '1,a,true' > f(1, "a", true);
Спецификации
| Specification |
|---|
| ECMAScript Language Specification # sec-array.prototype.join |
Совместимость с браузерами
BCD tables only load in the browser
Смотрите также
- String.prototype.split()
- Array.prototype.toString()
- TypedArray.prototype.join()
Found a content problem with this page?
- Edit the page on GitHub.
- Report the content issue.
- View the source on GitHub.
This page was last modified on 4 авг. 2023 г. by MDN contributors.
Your blueprint for a better internet.
MDN
Support
- Product help
- Report an issue
Our communities
Developers
- Web Technologies
- Learn Web Development
- MDN Plus
- Hacks Blog
- Website Privacy Notice
- Cookies
- Legal
- Community Participation Guidelines
Visit Mozilla Corporation’s not-for-profit parent, the Mozilla Foundation.
Portions of this content are ©1998– 2024 by individual mozilla.org contributors. Content available under a Creative Commons license.
Как реализовать ввод данных через пробел в C++?
Как считать значения через пробел в вектор в C++.
в первой строке даётся число равное количеству символов сколько будет считано, а во второй строке эти сами числа.
Пример ввода:
5
1 2 3 4 5
Как реализовать такой ввод на C++, чтобы эти числа попадали в вектор?
- Вопрос задан более трёх лет назад
- 8349 просмотров
Комментировать
Решения вопроса 2

Roman @myjcom Куратор тега C++
Ребят, я нашёл самое элегантное решение этой задачи
vector v(n); copy_n(istream_iterator(cin), n, v.begin()); copy_n(v.begin(), n, ostream_iterator(cout, " "));
generate_n(v.begin(), n, []> x; return x;>);
Ответ написан более трёх лет назад
Комментировать
Нравится 1 Комментировать
badproger12years @badproger12years Автор вопроса
Ребят, я нашёл элегантное решение этой задачи
#include #include using namespace std; int main() < int n; cin >> n; vector v(n); for (auto& it : v) cin >> it; for(auto& i:v) < cout>
Ответ написан более трёх лет назад
Комментировать
Нравится Комментировать
Ответы на вопрос 1

System Integrator
Реализуйте свой split().
Берёте строку и в цикле от первого и последнего символа проверяете, является ли символ пробелом. Если нет — добавляете этот символ во временную строку. Если да, то добавляете эту строку в динамический массив строк, а временную строку очищаете. В конце возвращаете динамический массив. Fini.
Или вообще на Qt переходите.
Ответ написан более трёх лет назад
Комментировать
Нравится 2 Комментировать
Ввод элементов массива в одну строку через пробел C#
int val = Convert.ToInt32(Console.ReadLine());
int[] arr = new int[val];
Console.WriteLine();
for (int i = 0; i < val; i++)
arr[i] = Convert.ToInt32(Console.ReadLine());
>
Получается, что каждый следующий элемент я ввожу с новой строки, нажав enter, а мне надо через пробел. Подскажите, как это сделать?
Голосование за лучший ответ
int[] arr = Console.ReadLine().Split(‘ ‘).Select(x => int.Parse(x)).ToArray();