Уведомления

Группа в Telegram: @pythonsu

#1 Окт. 31, 2014 05:23:42

Kustodiev_17
Зарегистрирован: 2013-12-25
Сообщения: 26
Репутация: +  1  -
Профиль   Отправить e-mail  

Ввод множества строк с числами с клавиатуры

Здравствуйте.

Есть: Поступает множество строк с целыми числами с клавиатуры (стандартного ввода). Заранее известно сколько будет чисел в следующей строке, но это известно только если “распознать” эту информацию из одной или нескольких предыдущих строк.

Например: (Изначально говорят до поступления собственно строк - в первой вводимой строке первое число будет означать количетво целых чисел N по модулю не превышающих второе число во вводимой строке M и всего последующих строк будет T. Далее идут T строк с N числами в каждой)

6 1024 100000                   # Первая строка поступающая на ввод. Здесь N = 6, M = 1024, T = 100000
17 -300 50 400 -16 45           # Далее поступает на ввод T = 100000 таких строк, содержащих по N = 6 
                                # целых чисел разделённых пробелом

Вопрос: Как быстро эти строки “распознавать”? Желательно варианты для Питона 2 и 3
(Я на данный момент, подозреваю, действую не оптимально: через input() получаю строку, запускаю всякие циклы с определением пробелов, по этим пробелам “вытаскиваю” кусок строки, привожу его к целому типу и получаю число.)
Если есть ссылки на прототипы решений моей проблемы или другие примеры в и-нете или учебной литературе - этого будет достаточно.

Отредактировано Kustodiev_17 (Окт. 31, 2014 05:24:54)

Офлайн

#2 Окт. 31, 2014 06:09:03

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 10015
Репутация: +  857  -
Профиль   Отправить e-mail  

Ввод множества строк с числами с клавиатуры

#!/usr/bin/env python3
 
import sys
 
out = []
 
next(sys.stdin)
for s in sys.stdin:
    out.extend(map(int, s.split()))
 
print(out)



Офлайн

#3 Ноя. 2, 2014 00:29:47

Kustodiev_17
Зарегистрирован: 2013-12-25
Сообщения: 26
Репутация: +  1  -
Профиль   Отправить e-mail  

Ввод множества строк с числами с клавиатуры

Спасибо, py.user.next.

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version