@ru_python

Страница 2424 из 9768
Pavel
06.03.2017
11:45:54
угу

Nikolay
06.03.2017
11:47:45
я насколько понимаю - sax так не делает, он итеративный

Роман
06.03.2017
11:48:22
и .iterparse в конечном итоге тоже? потоком обрабатывать ElementTree не выйдет?

Nikolay
06.03.2017
11:49:22
и .iterparse в конечном итоге тоже? потоком обрабатывать ElementTree не выйдет?
про iterparse не уверен, возможно, он и не грузит целиком

Google
Rocket
06.03.2017
11:49:34
Обмажутся своими xml-ями и ходют потом, парсят, понимаешь...

Роман
06.03.2017
11:50:03
про iterparse не уверен, возможно, он и не грузит целиком
я просто по докам и стэковерфлоу сужу — загружает итеративно, только нигде не написано, что выгружает в итоге)

Igelko
06.03.2017
11:50:21
добрый день, а не подскажете, почему в третьей ветке всё так безрадостно и приходится городить list, когда хочется reversed или слайс? print(list(reversed(list(groupby(files, key=get_grouper(sys.argv[2])))))[1:])

Igelko
06.03.2017
11:51:27
какой-то странный код
ну если прямее, то вот print(list(groupby(files, key=get_grouper(sys.argv[2])))[:-1]) мне надо все группы, кроме последней.

Aragaer
06.03.2017
11:51:35
потому что итератор

Igelko
06.03.2017
11:51:49
потому что итератор
а вот хочется прозрачности.

Aragaer
06.03.2017
11:52:18
и реверс и слайс требуют как минимум знания о длине того, с чем работаешь

Google
Igelko
06.03.2017
11:52:28
не, я имею в виду, что хочешь добиться в итоге?
мне надо взять все группы, кроме последней.

Aragaer
06.03.2017
11:52:30
а итератор это чорт знает что, может даже бесконечной длины

Nikolay
06.03.2017
11:52:37
как минимум за sys.argv[2] уже стоит заминусовать

Роман
06.03.2017
11:52:44
для обработки xml, посмотри на XSLT
ну он навряд ли подойдет, т.к. мне нужно бизнес-логику в импорт добавить

Igelko
06.03.2017
11:52:48
Роман
06.03.2017
11:53:41
ну так это и так должно подразумеваться
А ну да, если только не очень уж глубокое дерево(ссылка на родителя так-то остается)

Nikolay
06.03.2017
11:54:16
А ну да, если только не очень уж глубокое дерево(ссылка на родителя так-то остается)
если тебе нужен родитель, в некоторых случаях достаточно просто текущей глубины

а родителя всегда можно лениво подгрузить

Igelko
06.03.2017
11:54:40
и реверс и слайс требуют как минимум знания о длине того, с чем работаешь
хм, увы, да =( а если запихнуть внутрь материализацию в список, то толку никакого.

Ssi
06.03.2017
11:54:53
ну он навряд ли подойдет, т.к. мне нужно бизнес-логику в импорт добавить
но у тебя же xml приходить одного какого-то вида(наверно). Почему бы не преобразовывать это в json, например, и уже его работать

Ssi
06.03.2017
11:55:37
будто это спасает от потребления памяти.
да хуй с ней, с памятью. Это ж просто удобней

Роман
06.03.2017
11:55:56
но у тебя же xml приходить одного какого-то вида(наверно). Почему бы не преобразовывать это в json, например, и уже его работать
Поддержу вышесказавших, проблема с памятью останется, разницы особой нет даже по удобству

Igelko
06.03.2017
11:56:00
Ssi
06.03.2017
11:56:39
ну, тогда обрабатывать поточно же

Igelko
06.03.2017
11:56:53
http://lxml.de/sax.html только так и чинить.

Ssi
06.03.2017
11:57:10
sax'ом, например

да

Роман
06.03.2017
11:57:20
ну, тогда обрабатывать поточно же
ну вот этот вопрос и возник)

Google
Nikolay
06.03.2017
11:57:24
хм, увы, да =( а если запихнуть внутрь материализацию в список, то толку никакого.
если честно, это одно из первых живых применений groupby, которое я вижу) отродясь не пользовался

не очень понимаю, зачем групбай и потом реверс

почему бы сразу не сделать, как надо?

Роман
06.03.2017
11:57:52
http://lxml.de/sax.html только так и чинить.
гляну его, не знал раньше

Igelko
06.03.2017
11:58:04
не очень понимаю, зачем групбай и потом реверс
это я в творческом порыве писал. потом выпрямил уже.

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

гляну его, не знал раньше
странно, lxml - это одна из самых тонких и быстрых обёрток в строгом режиме.

Nikolay
06.03.2017
12:00:06
групбай возвращает группы отсортированные по возрастанию имени группы. что если мне критично их в обратном порядке перебрать?
а зачем тебе вообще групбай-то? почему бы просто не отсортировать в обратном порядке?

по ключу

Igelko
06.03.2017
12:03:07
а зачем тебе вообще групбай-то? почему бы просто не отсортировать в обратном порядке?
так тоже можно, да. просто потом нужно каждую группу расфасовать в свой отдельный архив. оно же ложится само на group by. https://gist.github.com/Igelko/6300dd1900aaf2c49e7fbbd67e0ef9a0

Nikolay
06.03.2017
12:04:13
ты как-то усложняешь :) я понимаю, функциональщина, все дела

Igelko
06.03.2017
12:05:58
так просто ж sorted(files, key=os.path.getmtime), не?
а где нарезать потом на кастомные куски? Писать вложенные циклы с break? мне где-то надо нарезать по %Y-%m, а где-то по %Y-%m-%d плюс потом удобно поименовать именем группы.

Nikolay
06.03.2017
12:06:43
а уж из нормальной функции лямбду возвращать - это вообще жесть

Igelko
06.03.2017
12:07:13
Nikolay
06.03.2017
12:07:33
думаешь проще прямо по месту её вкатать?
конечно, лямбда на то и лямбда

Igelko
06.03.2017
12:07:45
lambda x: lambda y: - это ещё хуже.

Nikolay
06.03.2017
12:07:49
либо переписать саму функцию, чтобы не надо было лишних лямбд

а на сколько групп тебе надо делить?

ты по таймстемпам в названии группируешь?

Google
Igelko
06.03.2017
12:10:59
ты по таймстемпам в названии группируешь?
нет, мне надо у всех файлов узнать mtime, вытащить из него кусок по маске выше, потом сгруппировать по этому значению и каждую такую кучку сунуть в свой архив. архив поименовать маской.

Igelko
06.03.2017
12:14:07
я бы сказал, такую задачу проще решать без питона :)
у меня плоховато со знанием баша в таких моментах. плюс потом чёрт его знает, во что превратится этот простенький скрипт. вдруг потом придётся эти архивы куда-то по http сливать.

я поначалу думал вообще обойтись банальным logrotate, но понял, что не хватит.

Nikolay
06.03.2017
12:15:45
ну, я бы, честно, не стал бы мудрить и сделал просто while-циклом

так и читабельнее будет в разы, ты этот свой код через месяц уже не прочтешь

Lulz
06.03.2017
12:18:59
ну либо комменты оставляй

Admin
ERROR: S client not available

Octo@dshacks
06.03.2017
12:21:15
Либы не найдется для net.tcp?

Lulz
06.03.2017
12:21:40
ща спросим

Nikolay
06.03.2017
12:21:40
Либы не найдется для net.tcp?
в смысле? работать с tcp-сокетами?

Lulz
06.03.2017
12:22:21
socket ne?

Octo@dshacks
06.03.2017
12:22:37
https://github.com/JustArchi/ArchiSteamFarm/wiki/WCF

вот к этой штуке подключиться

⁧ FOX.EXE !POTD
06.03.2017
12:25:39
detected
детектнулся окто с левентосом

Octo@dshacks
06.03.2017
12:26:04
Ну так шо, нету для Net.Tcp ничего?

Придется блочить порт?

Google
⁧ FOX.EXE !POTD
06.03.2017
12:26:15
Ну так шо, нету для Net.Tcp ничего?
так пошарь на гите в исходниках

мб наковыряешь

Octo@dshacks
06.03.2017
12:26:30
⁧ FOX.EXE !POTD
06.03.2017
12:26:31
тебе нужен только на питон?

Octo@dshacks
06.03.2017
12:26:33
Проприетарщины

а, ты про сам ASF?

⁧ FOX.EXE !POTD
06.03.2017
12:26:47
+

Octo@dshacks
06.03.2017
12:26:53
так он использует .NET'овскую реализациюи



⁧ FOX.EXE !POTD
06.03.2017
12:27:46
а тебе нужен код на питон для коннекта через WCF?

хотя хз зачем тебе он

ибо статус можно выводить командой в чате стима

Nikolay
06.03.2017
12:30:23
а, ты про ironpython?

Там просто можно вроде импортировать эти классы

Octo@dshacks
06.03.2017
12:43:33
Nikolay
06.03.2017
12:43:51
эт шо?
эт Python, который работает на дотнете

Octo@dshacks
06.03.2017
12:44:06
это не для меня увы

у меня сервер на моно

Nikolay
06.03.2017
12:44:29
я не знаю, может, он на моно тоже может

не очень только понимаю, зачем смешивать питон с моно, в таком случае

Страница 2424 из 9768