@python_beginnersЭта группа больше не существует

Страница 340 из 1885
Zart
22.08.2016
10:11:17
лекции про гил для нубов, не знающих что такое "поток" вообще - вдвойне бесполезны и втройне опасны

а то наберутся всякой херни

⬗VLAD⌶K⬖
22.08.2016
10:13:43
с другой стороны скорее всего такие знания мне не особо понадобятся, многопоточность для какого то скрипта на две страницы =)

Denis
22.08.2016
10:14:38
Если скрипт работает с вебом, многопоточность пригодится

Google
⬗VLAD⌶K⬖
22.08.2016
10:14:43
для каких нибудь сисадминов-гамадрилов может быть

Zart
22.08.2016
10:15:00
⬗VLAD⌶K⬖
22.08.2016
10:16:27
Если скрипт работает с вебом, многопоточность пригодится
с вебом меня мало что связывает, постольку поскольку мне он не интересен

Denis
22.08.2016
10:16:39
А что интересно?

[Anonymous]
22.08.2016
10:17:23
Denis
22.08.2016
10:17:45
CP, Zoo...
Ну тут и без потоков можно, да

Zart
22.08.2016
10:18:02
деццкое порно?

⬗VLAD⌶K⬖
22.08.2016
10:19:59
А что интересно?
возможно буду делать приложения для обмена данными по сети, чаты, торренты, шифрованные соединения, поверхинтернеты

Denis
22.08.2016
10:20:54
Все равно потоки пригодятся

Andrew
22.08.2016
10:23:05
я опять к вам в гости )

Denis
22.08.2016
10:23:12
Дратути

Ванька
22.08.2016
10:23:23
опять 25

Andrew
22.08.2016
10:25:24
вобщем есть нное кол-во железок от разных вендоров. с ними можно работать по разным протоколам, допустим telnet, ssh, snmp. с точки зрения организации бибилиотеки и вызова функций, как грамотно сделать? Цель - по информации из базы вызвать правильный метод для нужного девайса. Например. vendor = dlink, model = des-3028, protocol = telnet, функция - get_fdb

Google
Zart
22.08.2016
10:25:53
мультиадаптеры!

Andrew
22.08.2016
10:26:12
да я мозг сломал с какой стороны зайти :(

⬗VLAD⌶K⬖
22.08.2016
10:26:20
CP, Zoo...
если человек пользуется тором, это не значит что он обязательно любит цп, так к слову

Zart
22.08.2016
10:26:33
а я вообще не понял о чем он

Andrew
22.08.2016
10:26:48
делать 1 get_fdb и там внутри парсить по моделям и вызывать для каждой свою функцию, топорно, но как-то некрасиво

Zart
22.08.2016
10:27:09
для меня CP - это Cubic Player, Connection Point, Control Protocol...

Andrew
22.08.2016
10:27:31
хочется что-то типа формирования имени функции с последующим её вызовом

Denis
22.08.2016
10:27:35
mkdir ls touch v cp v ls

⬗VLAD⌶K⬖
22.08.2016
10:28:05
для меня CP - это Cubic Player, Connection Point, Control Protocol...
в его контексте Zoo + cp это ясными словами

Zart
22.08.2016
10:28:24
хочется что-то типа формирования имени функции с последующим её вызовом
telnet, ssh, web и snmp - это не взаимоисключаюшие вещи так то

Andrew
22.08.2016
10:28:36
слово мультиадаптеры у меня как-то ассоциируется с zope

Zart
22.08.2016
10:28:52
хз, я не юзал тор

Andrew
22.08.2016
10:29:10
telnet, ssh, web и snmp - это не взаимоисключаюшие вещи так то
ну так-то да, некоторые вещи можно делать и тем и другим )

Cykooz
22.08.2016
10:29:27
хочется что-то типа формирования имени функции с последующим её вызовом
Если не zope, а в лоб то вот так можно ? method_name = 'bla' + 'foo' + .... method = getattr(module, method_name, None) if method: method()

Andrew
22.08.2016
10:29:48
словно чтото плохое
ну т.е. почитать про мультиадаптеры? :)

Zart
22.08.2016
10:29:53
нет

ты сейчас мучаешься дизайном апи или что?

Andrew
22.08.2016
10:30:32
угу

именно

Google
Andrew
22.08.2016
10:31:00
если ты слышал, есть такой проект опенсорсный - NOC Project

так вот, по сути, мы его ковыряли-ковыряли, по ряду причин он нам не подходит. пытаемся написать нечто подобное, но свое.

учитывая, что для меня это первый достаточно большой проект на питоне - сюда и пишу :) до этого писал только скрипты всякие по автоматизации - типа прошивки обновить на 1000 девайсах

Zart
22.08.2016
10:33:51
боюсь это вопрос не для новичков ни разу

Andrew
22.08.2016
10:34:37
боюсь это вопрос не для новичков ни разу
ну ты ж не новичок :) направь на путь истинный :)

Zart
22.08.2016
10:34:44
э...

Cykooz
22.08.2016
10:34:47
Адаптеры из ZCA работают на базе типов и интерфейсов. У тебя как понимаю есть только значения (названия девайсов, моделей, версий и др.). Поэтому адаптеры из zope не очень тут подходят

Pavel
22.08.2016
10:34:48
Я могу ошибаться, но специально для таких случаев придумали ооп. Пачка классов, реализующих функционал, плюс регистр "если dlink - юзаем класс Dlink".

Zart
22.08.2016
10:34:59
за такое людям слишком дохуя платят 8)

но тут дизайнить и дизайнить...

Zart
22.08.2016
10:36:56
я ж не знаю выбрали ли они агентов или агентлесс

Cykooz
22.08.2016
10:37:13
у меня мысль была IDevice, IProtocol, adapt(IDevice, IProtocol) -> ISession
Ну он выше вот такие входные данные привёл vendor = dlink, model = des-3028, protocol = telnet Если параметра всего 3, и он под каждый заведёт отдельный интерфейс или класс - то можено и через zope адаптеры

Zart
22.08.2016
10:37:28
как работать с группами девайсов, допускать лишь гомогенные или гетерогенные..

я сам подобное пилить хочу для своей работы 8)

Zart
22.08.2016
10:38:06
и я однозначно буду разделять инфу о девайсе от коннекшен пойнтов для доступа к оному

Cykooz
22.08.2016
10:38:27
да это на вскидку, хрен его знает, как оно дальше повернется
Ну вот если у тебя будет 100 вендоров - тебе придётся запилить 100 разных классов или интерфейсов для каждого вендора, что бы юзать адаптеры из zope

Google
Zart
22.08.2016
10:39:05
заббикс вроде решил кучу этих проблем

Cykooz
22.08.2016
10:39:10
а по-другому никак
Ну вот я выше привёл простой код в лоб method_name = 'bla' + 'foo' + .... method = getattr(module, method_name, None) if method: method()

Andrew
22.08.2016
10:39:39
Ну вот я выше привёл простой код в лоб method_name = 'bla' + 'foo' + .... method = getattr(module, method_name, None) if method: method()
спасибо, попробуем начать с этого... еще 200 раз переписывать все буду )

Cykooz
22.08.2016
10:41:00
Можно под каждого вендора завести свой модуль, и сначала импортировать его по имени вендора, а потом в этом модуле искать класс для модели девайса, а потом в этом классе метод для протокола

Zart
22.08.2016
10:41:19
э... вы какуюто хуйню решили городить сразу

Cykooz
22.08.2016
10:42:01
Andrew
22.08.2016
10:42:22
а че не хуйня, логичный вопрос? ;)

Admin
ERROR: S client not available

Zart
22.08.2016
10:42:39
ну я бы не стал сразу мыслить в терминах вендоров

это какой-то тупиковый способ заебаться

Cykooz
22.08.2016
10:43:07
Могу ещё предложить добавление вендорных/девайсовых модулей через entry_points в setup.py ?

Zart
22.08.2016
10:44:30
конкретно про ентри пойнты?

Andrew
22.08.2016
10:44:51
https://chriswarrick.com/blog/2014/09/15/python-apps-the-right-way-entry_points-and-scripts/

пойдет?

Zart
22.08.2016
10:45:11
https://setuptools.readthedocs.io/en/latest/pkg_resources.html#entry-points

официальная дока

из минусов - оно тяжеловесное сильно

Andrew
22.08.2016
10:45:44
ммать

Google
Cykooz
22.08.2016
10:45:55
а где про это почитать? ;)
Вот поэтому и предложил вариант с импортом, т.к. entry_points тянет за собой освоение теории пакетирования питонячих модулей и написание setup.py.

Zart
22.08.2016
10:45:57
не для вендор лукапа

Pavel
22.08.2016
10:47:01
господа, а какую проблему вы так яростно решаете? как делать однотипные задачи на разнотипном оборудовании, когда набор железа неисзвестен заранее, и всё это в контексте сервера zope?

Andrew
22.08.2016
10:47:24
не, про zope речи не было

Cykooz
22.08.2016
10:47:39
zope вспомнили в контексте адаптеров, но тут это не очень влазит

Andrew
22.08.2016
10:47:40
вопрос как раз, что выбрать

Zart
22.08.2016
10:47:48
сервера зопы в поминках не было

тот самый момент, когда многие знания = многия печали

бо отчетливо видно какое же говно все варианты на горизонте

Tux
22.08.2016
10:57:22
вообще не поинмаю решение задачи

В Институте биоинформатики между информатиками и биологами устраивается соревнование. Победителям соревнования достанется большой и вкусный пирог. В команде биологов a человек, а в команде информатиков — b человек. Нужно заранее разрезать пирог таким образом, чтобы можно было раздать кусочки пирога любой команде, выигравшей соревнование, при этом каждому участнику этой команды должно достаться одинаковое число кусочков пирога. И так как не хочется резать пирог на слишком мелкие кусочки, нужно найти минимальное подходящее число. Напишите программу, которая помогает найти это число. Программа должна считывать размеры команд (два положительных целых числа a и b, каждое число вводится на отдельной строке) и выводить наименьшее число d, которое делится на оба этих числа без остатка.

нагуглил вот такой ответ

a = int(input()) b = int(input()) c = a*b while a!=0 and b!=0: if a > b: a = a % b else: b = b % a print (int(c/(a+b)))

Pavel
22.08.2016
10:58:03
наименьшее общее кратное?

Zart
22.08.2016
10:58:08
марш в школу. класс примерно 5й, урок про наибольший общий делитель и наименьшее общее кратное и алгоритм Эвклида

Tux
22.08.2016
10:58:14
но никак не могу понять как ее решить

может потому что с самого утра решаю всякие задачки, голова опухла уже

к примеру берем мы числа 7 и 5

'с' у нас получается 35

mey
22.08.2016
10:59:58
разве нет?

Страница 340 из 1885

Эта группа больше не существует Эта группа больше не существует