
Zart
13.10.2016
11:10:18
покажи пример с цмп

Cykooz
13.10.2016
11:10:42
key для извлечения данных, а не для того что бы какую то магию с ними запилить, которую придётся в комментраиях описывать, иначе потом никто не поймёт нафига это

Zart
13.10.2016
11:10:43
ща будут многоэтажные if a is None and b is None
key не для извлечения данных...

Google

Zart
13.10.2016
11:11:16
а для определения ключа сортировки, блядь

Cykooz
13.10.2016
11:12:05
ключ сортировки? что это означает?

Lisa
13.10.2016
11:12:11
на самом деле там у меня довольно сложная конструкция с кучей параметров, поэтому не привожу листинг, чтобы не запутать народ :) но переписывать ее с key на cmp не хотелось бы )

Zart
13.10.2016
11:12:28
любой вариант с cmp будет в разы длинее варианта с key
на самом деле можно сделать проще
сделай так что бы изначально вместо None совалась константа..

Lisa
13.10.2016
11:13:20
изначально не могу, список не мой
ну разве что преобразовать его
но там этих списков...
и выводиться в итоге должно как в первчином списке, т.е. None. но внизу )

Zart
13.10.2016
11:15:31
ну key не меняет ничего

Lisa
13.10.2016
11:15:34
а что за задчака, можно подробнее? :)

Zart
13.10.2016
11:16:38
мм... а в туплах произвольное колво None?

Google

Lisa
13.10.2016
11:21:37
ну в принципе да. туплы из трех значений, один из которых - инстанс, а сортировка производится и по свойствам объекта, и по значениям в tuple %) всего по 6 параметрам
и большая часть из них может быть None или нет
но строковые - только эти какашки )

Zart
13.10.2016
11:26:40
в тройке ж это работать не будет...

Cykooz
13.10.2016
11:27:23
Ок, тогда, как по моему предложили выше, запилить класс в котором переопределить __cmp__ кажется, что бы он всегда возвращал что нужно. Ну и подменять все None на экземпляр этого класса (заранее созданый)

Pavel
13.10.2016
11:28:56
голосую за cmp=my_compare_function, внутри которой в комментариях объяснить, что происходит, а так же явно прописать случай с None, а не страдать хернёй с 'z'*1000

Zart
13.10.2016
11:30:17
>>> class strmax(str):
... __lt__ = lambda self, value:False
... __gt__ = lambda self, value:True
... __repr__ = lambda self:"max''"
...
>>> strmax = strmax()
>>>
>>> sorted(['qwe', 'rty', strmax, '456', '123', strmax, 'asd'])
['123', '456', 'asd', 'qwe', 'rty', max'', max'']
>>>

Cykooz
13.10.2016
11:34:49
Осталось только запилить хитрый key который будет генерировать новый tuple, в котором вместо None будет этот strmax

Zart
13.10.2016
11:35:28
жаль у тупла нет replace, было бы key=lambda x:x.replace(None, strmax)
а так придётся key=lambda x:tuple(strmax if i is None else i for i in x)

Cykooz
13.10.2016
11:36:03
key=lambda v: [strmax if x is None else x for x in v]
А есть смысл в tuple превращать?

Zart
13.10.2016
11:36:32
вроде нет

Omni
13.10.2016
12:15:11

Lisa
13.10.2016
12:21:48
то что надо, спасибо, элегантно и просто, только одну строчку добавить в мое выражение :) как это я сразу не догадалась... понимания внутреннего не хватает )

Zart
13.10.2016
12:23:43
для третьего питона один хрен переделывать придётся

Lisa
13.10.2016
12:24:35
нууу, для него много что переделывать придется по-любому

Zart
13.10.2016
12:24:59
ну а так это добавляет уровень сортировки при котором None уезжает в хвост, да

Google

Lisa
13.10.2016
12:25:03
а что там, sort через key=lambda не работает?

Zart
13.10.2016
12:25:22
нет, там нельзя сортировать None и строки в одном списке
потому что типы несравнимые

Lisa
13.10.2016
12:25:47
как жестоко )

Zart
13.10.2016
12:26:02
>>> [('a', 'a'), ('a', None)].sort()
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: unorderable types: NoneType() < str()

Lisa
13.10.2016
12:27:13
ну, тогда по-любому придется заранее избавляться от None, конечно

Pavel
13.10.2016
12:41:09
Коллеги, если я приду в линукс-чат и буду жаловаться, что в дебиане сеть не встаёт, пока не сделаешь systemctl restart networking.serivce, то меня опять будут убеждать, что я не умею в линукс, как это было с пропадающим вайфаем?

[Anonymous]
13.10.2016
12:43:57
Но уметь в линкус и есть, уметь решать тысячи подобных заморочек.
Это не коробочка.
Где все готовое.

Темный
13.10.2016
12:45:43

Pavel
13.10.2016
12:45:44

Stuw (Андрей)
13.10.2016
12:45:56
уметь решать - вплоть до фикса драйвера в ядре, например?

Pavel
13.10.2016
12:46:16

[Anonymous]
13.10.2016
12:46:22
Желательно изучать ядро.

Темный
13.10.2016
12:46:36

Zart
13.10.2016
12:46:37
файрволл и роутинг смотрел?

Pavel
13.10.2016
12:47:36

Stuw (Андрей)
13.10.2016
12:48:01
Желательно изучать ядро.
Изучить приницы - одно, изучить все подсистемы, чтобы мог дебажить проблемы и фиксить их - совсем другое. Я думаю единицы могут найти и починить проблему в любой подсистеме

Google

Zart
13.10.2016
12:48:41
tcpdump?
да и в дмесг надо глянуть, может упс ведра

[Anonymous]
13.10.2016
12:49:42

Stuw (Андрей)
13.10.2016
12:50:19
Тут вопрос не про должен/не-должен

[Anonymous]
13.10.2016
12:50:53
Не про должен/не должен, но исходит все из этого, иначе причин обсуждению я не вижу.

Admin
ERROR: S client not available

Stuw (Андрей)
13.10.2016
12:53:12
:))

Pavel
13.10.2016
13:04:01
да и в дмесг надо глянуть, может упс ведра
cat /var/log/dmesg говорит "nothing has been logged yet". В /var/log/syslog только про старт всего подряд. где-то там есть про то, что сеть встала и сконфигурировалась. в tcpdump только исходящие от меня арпы.
пристрою куда-нибудь рестарт сети после запуска системы, да и ебись он конём.

Zart
13.10.2016
13:10:07
Просто дмесг в лесс запусти

Pavel
13.10.2016
13:23:23
Просто дмесг в лесс запусти
e1000: eth0 NIC Link is Up 1000 Mbps full duplex, Flow Contorl: RX. после этого только три строки про FS-Cache и knfsd и всё.

Zart
13.10.2016
13:27:00
мгм
пинг в обе стороны не ходит?

Pavel
13.10.2016
13:28:11
угу.

Zart
13.10.2016
13:29:13
прикольно...

Pavel
13.10.2016
13:29:15
ifconfig показывает рост счётчиков пакетов, UP BROADCAST RUNNING MULTICAST

Zart
13.10.2016
13:29:43
а при пингах что?
таймауты?

Pavel
13.10.2016
13:30:21
destination host unreachable если из этого ящика пинговать

Zart
13.10.2016
13:30:37
гм

Google

Zart
13.10.2016
13:30:58
моментально?

Pavel
13.10.2016
13:31:14
tcpdump показывает исходящие арпы, но никак не реагирует на входящие. вообще ничего не показывает, а по сети всякое ходит
моментально?
три секунды паузы, потом три пакета моментально, снова три секунды ждёт - опять три пакета одновременно.

Zart
13.10.2016
13:34:04
подозрительно
ethtool <ifname> может что интересное покажет
а на свитче у порта те же настройки что и у сетевухи - гигабит/дуплекс?

Pavel
13.10.2016
13:36:40
а я не говорил чтоли? этот дебиан в виртуалбоксе.

Zart
13.10.2016
13:36:53
про вбокс не говорил

Pavel
13.10.2016
13:37:11
сори.

Zart
13.10.2016
13:37:11
тогда косяк может быть и со стороны хоста - надо глядеть в дмесг и там
вбокс вообще падучее говнище
у меня виндовый вешался на раз-два намертво и не раз

Dmitriy
13.10.2016
13:38:19
Кто-нибудь работал с вконтактегом через это https://pypi.python.org/pypi/vk ?

Pavel
13.10.2016
13:38:21
я бы начал ковырять хост, но после перезапуска сети внутри бокса всё чинится. И работает стабильно месяцами.

Zart
13.10.2016
13:38:31
эм
видать дёргает драйвер хоста..
Эта группа больше не существует