
Темный
07.12.2016
09:25:02

Maxim
07.12.2016
09:25:05
лол)

Johnnie
07.12.2016
09:25:26
предлагаю ставить gentoo в этом случае
твой ноутбук точно потянет ее

Google

Артем
07.12.2016
09:25:34
+++

b0g3r
07.12.2016
09:25:55

Zart
07.12.2016
09:26:06
олсо "надо было ставить опенбсд"

Vadim
07.12.2016
09:26:39
Да хоть debian, с окнами попроще. В своё время система с gnome 2.3 под себя брала 120 мег ОЗУ. Работать можно.

Артем
07.12.2016
09:29:34
ОпенБСД + МАТЕ было 170 мб правда в виртуалбоксе, а как на реальных железках хз

Aleksandr
07.12.2016
09:29:55
Да дебиан много не жрёт.

Maxim
07.12.2016
10:18:23
скрипт ходит по ссылках, собирает оттуда данные, добавляет в лист
в обычной реализации это занимало около 120 с, попробовал запилить многопоточность, получилось что с двумя, что пятьюдесятью воркерами 60 с. почему так)?

Varya
07.12.2016
10:18:33
ребят, мне неловко такое спрашивать, но раз тут чат для начинающих, все же рискну: как записывать входящий двумерный массив, если нет границ: то есть, неизвестен ни размер массива, ни его конечный элемент, никаких условий. Просто надо считать тот массив, который введет пользователь

Igor
07.12.2016
10:18:58
а как ты представляешь себе ввод двумерного массива пользователем?
(ну, примерно)

Varya
07.12.2016
10:19:32
он вводит строками элементы, разделенные пробелом

Zart
07.12.2016
10:20:30
и если он введет в одной строке 3 элемента, а во второй 5

Varya
07.12.2016
10:21:11
ну это ограничение можно ввести после считывания первой строки, интересно-как понять, что пора заканчивать считывание строк

Google

Zart
07.12.2016
10:21:24
"пора"?
а у тебя выбора нет

Varya
07.12.2016
10:22:20
но если это не описать в программе разве не выйдет ошшибка вроде "вы пытаетесь считать элементы, а считывать нечего "

Igor
07.12.2016
10:22:28
ну, вероятно че-то вроде
data = []
try:
while True:
row = input()
data.append(row.split(' '))
except KeyboardInterrupt:
print('Result:')
print(data)
❯ python3 test.py
1 2 3
a b c d e
^CResult:
[['1', '2', '3'], ['a', 'b', 'c', 'd', 'e']]

Zart
07.12.2016
10:23:22
я бы сделал data = list(iter(input, ''))
до ввода пустой строки

Varya
07.12.2016
10:23:55
спасибо. Пойду искать что такое except KeyboardInterrupt.

Igor
07.12.2016
10:24:05
эксепшн, который кидается когда нажимаешь ctrl+c
чтоб выйти из программы
или, вроде, ctrl+d в винде, хз, зарт поправит

Zart
07.12.2016
10:24:47
не, ^Z в винде это EOF, в отличие от ^D в никсах

Igor
07.12.2016
10:24:58
да, но я не про eof

Zart
07.12.2016
10:25:11
^D в винде это просто ^D

Varya
07.12.2016
10:25:19
ясно, спасибо большое

Igor
07.12.2016
10:25:22
а ок. а ctrl+c таки тоже завершает, как в никсах?

Zart
07.12.2016
10:25:52
технически под капотом реализации очень разные
на практике и конкретно в питоне - одно и то же

Vadim
07.12.2016
10:27:46
Угарный тип
Про Линукс который
Прям представил такого школьника с усами в пиджачке, очки с толстым стеклом

Igor
07.12.2016
10:28:39
тогда уж в свитере, а не пиджачке

Google

Vadim
07.12.2016
10:29:05
Он со школы пришел. На учебу как на праздник

Maxim
07.12.2016
10:32:21
подскажите плиз)
скрипт ходит по ссылках, собирает оттуда данные, добавляет в лист
в обычной реализации это занимало около 120 с, попробовал запилить многопоточность, получилось что с двумя, что пятьюдесятью воркерами 60 с. почему так)?

Agent
07.12.2016
10:33:19
На видяхе многопоточность лучше реализовуй. Есть либы на Питоне для openCL

Zart
07.12.2016
10:34:16
тут лучше не гадать, а спросить код

Maxim
07.12.2016
10:35:13

Agent
07.12.2016
10:35:24

Zart
07.12.2016
10:35:34
масштабов, простите, чего?

Maxim
07.12.2016
10:36:25
http://pastebin.com/rKQfXRKL

Agent
07.12.2016
10:36:25
На видяхе если мало потоков то ещё медленнее выходит

Maxim
07.12.2016
10:38:25
кол-во ядер же ограничивает кол-во процессов, не?

Igor
07.12.2016
10:38:45
надо арендовать несколько виртуалок у amazon, главное помощнее
тогда все 50 потоков будут ок работать

Agent
07.12.2016
10:39:17
Попробуй 4 потока сделать

Zart
07.12.2016
10:39:36
эти люди осознают что именно они несут?

Maxim
07.12.2016
10:39:55
там памяти одинаково выделяется, что при двух, что при 50, и процессор одинаково грузится

dmks
07.12.2016
10:40:00

Igor
07.12.2016
10:40:01

Google

Igor
07.12.2016
10:40:22

dmks
07.12.2016
10:41:07

Maxim
07.12.2016
10:44:40
с 4 вроде в районе 50 секунд, в общем тоже минута
а
два ядра штоле

Agent
07.12.2016
10:54:32
Maxim
Если дело было бы не в сети, а в парсере, то на более менее машине не ранее 2012 года остановку в скалабилити увидели бы на 8-16 тредах
Но тут уже в 2 упирается
Вывод — парсер простой, сеть загружена и является боттлнеком
Вам не треды нужны, а неблокирующие сокеты и прочая асинхронщина, потому что основное время скрипт ожидает ответа от сервера, а не скачивает/получает информацию.
Это с чата другого ответили

Admin
ERROR: S client not available

Agent
07.12.2016
10:55:45
Telegram.me/rudepython
Зайди там как раз твой вопрос обсуждают

Maxim
07.12.2016
10:56:15
спасибо
попробую asincio потыкать

Alexey
07.12.2016
11:29:56
Всем привет! Есть человек, который хорошо освоил django rest framework?
не могу вкурить пару моментов=(

Igor
07.12.2016
11:31:50
спрашивай просто

Vadim
07.12.2016
11:31:53
Смотря что ты подразумеваешь под „хорошо“.
А может на pastebin?
Чувствую, что в настройках пайчарма указан неверный интерпретатор.

Google

Rita
07.12.2016
11:35:16
Как проверить, палиндром ли строка?

Vadim
07.12.2016
11:35:43
string == string[::-1]

Igor
07.12.2016
11:35:44

Vadim
07.12.2016
11:35:58

Ilya
07.12.2016
11:35:59
делишь пополам и считаешь и сравниваешь хеш

Igor
07.12.2016
11:36:13

Vadim
07.12.2016
11:36:18
@iamigor первый нах))

Pavel
07.12.2016
11:36:31

Ilya
07.12.2016
11:36:56
Когда препод увидит очень много вопросов задаст=)

Alexey
07.12.2016
11:40:03
Я в serializers правильно написал?
интерпретатор перенастроил

Igor
07.12.2016
11:41:50
че-т я нихуя не понял
ты сделал сериалайзер ссылающимся на модель Lesson
а прислал скриншот с кодом модели Course
а, сорри
там еще один файлом был передан
да, спасибо)
так, и че не так? sum_lessons не работает?
Эта группа больше не существует