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

Страница 629 из 1885
Johnnie
26.10.2016
09:31:12
у меня побольше кода(

Zart
26.10.2016
09:31:21
рекурсия

Johnnie
26.10.2016
09:31:35
https://paste.fedoraproject.org/461250/74289147/

Zart
26.10.2016
09:32:18
чота неочевидно ничерта

Google
Igor
26.10.2016
09:32:39
Johnnie
26.10.2016
09:32:47
там говнокод, ниче страшного, если не видно :D

V
26.10.2016
10:21:59
вот занимательная история, может кто сталкивался с подобным. есть такой себе редис, сидит на удаленном хосте. заходим на хост по ssh, локально запускаем redis-cli, все работает. ок, делаем ssh-туннель, запускаем redis-cli локально, он идет через туннель на удаленный хост, коннектится, авторизуется, но данных не видит. в info показывает # Keyspace db1:keys=100500,expires=0,avg_ttl=0. но на запрос keys * говорит нет у вас ключей. вообще.
как обычно, любая мистика имеет вполне разумное объяснение, если как следует разобраться. дело было в том, что локальный редис-кли был старой версии. проверять это в голову не приходило, т.к. он был свежепоставленный. но оказалось, что в системе заранее был еще один клиент, более древний. и в пути он был первым, так что он и запускался и срал в малину. такие дела.

а какая либа для редиса считается наиболее православной?

пробую redis-py - что-то не особо вдохновляет. доки скудные совсем

Igor
26.10.2016
10:46:21
доки скудные потому что он тупой как палка, читай сразу доку самого редиса

по-моему даже в доке redis-py'я так советуют

V
26.10.2016
10:50:09
да, но я, например, не сразу вкурил как ему auth сказать. и судя по SO я не первый

Bulat
26.10.2016
10:57:26
http://ehmatthes.github.io/pcc/cheatsheets/README.html

краткие записки по книге http://www.piter.com/collection/new/product/izuchaem-python-programmirovanie-igr-vizualizatsiya-dannyh-veb-prilozheniya

V
26.10.2016
10:59:12
по-моему даже в доке redis-py'я так советуют
про декодирование ответов тоже в доке по редису ничего не найти

A
26.10.2016
11:03:53
Процент какой с продаж получаешь?

Google
V
26.10.2016
11:04:34
ой, а напомните пож-та, если приходит строка вида \\u041a\\u0443\\u0431\\u043e\\u043a как ее в русские буквы перевернуть?

Igor
26.10.2016
11:06:33
.decode('unicode-escape') если мне память не изменяет

V
26.10.2016
11:06:35
т.е. изначально приходит b'\\u041a\\u0443\\u0431\\u043e\\u043a', я в параметрах redis-py указал encoding='utf-8', decode_responses=Trueи наивно полагал, что он это не только в str переделает, но и юникодные символы покажет. а нет. теперь это str, но вот такой

да, питон 3.5

Igor
26.10.2016
11:07:21
In [7]: data = b'\\u041a\\u0443\\u0431\\u043e\\u043a' In [8]: data.decode('unicode-escape') Out[8]: 'Кубок'

ништяк

V
26.10.2016
11:08:24
круто, спасибо. только тогда декодинг средствами redis-py смысла не имеет, лучше уж самому из байтов декодить

Igor
26.10.2016
11:08:43
насчет redis-py не подскажу, я б методом тыка попытался все-таки добиться нужного от него, а то это всрато как-то

такие базовые вещи за ним подчищать

> If the client's decode_responses is True, then the 'channel', 'pattern' and 'data' values will be automatically decoded to unicode strings using the client's charset.

ваще странно, очень странно

V
26.10.2016
11:10:28
такие базовые вещи за ним подчищать
да сам офигел. редис так популярен, а либы под него такие вялые почему-то...

я так понимаю, он не чухает, что оно ескейпнутое

но где ему об этом сказать - хз

V
26.10.2016
11:11:28
ага

Zart
26.10.2016
11:11:55
провайдерский?

Anna
26.10.2016
11:12:59
провайдерский?
зависит от того, насколько провайдер долбоёб

Google
V
26.10.2016
11:13:11
жсон?
да, можно жсоном парсить ответ, который в байтах пришел и тогда все по-русски. спасибо, так навреное более кошерно будет

V
26.10.2016
11:14:51
показал без кавычек просто, а вообще там - он )

Zart
26.10.2016
11:15:02
значит ктото его туда сунул

V
26.10.2016
11:15:03
сложно было догадаться?! ))))

Anna
26.10.2016
11:15:49
не, ну... я в голодные годы в общежитии делала деньги на том, что "настраивала роутеры" - вводила 8.8.8.8 как днс, потому что провайдер днс раздать нормально не умел

V
26.10.2016
11:16:00
да, сунули жсон в редис, потому что там очередная ветвистая структура словарей и списков словарей. что-то мне везет на них последние дни

Zart
26.10.2016
11:16:47
у моего провайдера из двух днсов обычно хронически не пашет один, а у второго перебои с ресолвом каких-то зон

проще вышло поднять свой рекурсивный

мне один хрен держать свои зоны надо для раздачи в инеты

Anna
26.10.2016
11:17:48
у моего провайдера из двух днсов обычно хронически не пашет один, а у второго перебои с ресолвом каких-то зон
это тоже да, было, я поэтому сначала делала деньги на тайном знании днс провайдера, а потом поняла, что смысла в этом мало в любом случае

маленькие ублюдские провайдеры - ух, обожаю, особенно техподдержку.

Igor
26.10.2016
11:18:20
был еще красивый 4.2.2.4

Zart
26.10.2016
11:18:28
дядя, я 500 руб беру не за нажатие на кнопку, а за то что знаю на какую из них нажать (с)

Igor
26.10.2016
11:18:32
это я безотносительно его охуенности

Anna
26.10.2016
11:20:22
дядя, я 500 руб беру не за нажатие на кнопку, а за то что знаю на какую из них нажать (с)
так что ты, недовольных не было, все были готовы денег давать, потому что смена настроек роутера им казалась чем-то просто вот не от мира сего, сами они туда лезть боялись.

V
26.10.2016
11:20:46
да, можно жсоном парсить ответ, который в байтах пришел и тогда все по-русски. спасибо, так навреное более кошерно будет
тьфу, точнее наоборот! жсон может парсить строки, но не может байты, поэтому redis-py говорим decode_responses=True, а потом то, что пришло кормим жсону. вот

Zart
26.10.2016
11:21:03
чо

Google
Igor
26.10.2016
11:32:15
угу :)

да, пингуется, просто все про него забыли и стали пользоваться 8.8.8.8 :)

Zart
26.10.2016
11:34:11
все?

V
26.10.2016
11:43:05
чо
с какого места? из редиса приходят либо байты, если decode_responses=False, либо строка, если decode_responses=True. если приходят байты. модуль жсон не понимает, если ему передать байты, ему надо передать строку.

Admin
ERROR: S client not available

A
26.10.2016
12:02:55
как по шурику проверить, возможна ли запись в файл?

Stanislav
26.10.2016
12:07:29
Есть lst = ['ssss', '\n', 'sad'] Нужно убрать '\n' list(filter(lambda x: x is not '\n', lst)) или list(x for x in lst if x is not '\n') Подходят для решения, но мне хотелось бы что-то элегантное и применимое к списку как метод, т.е lst.method() #['ssss', 'sad']

Zart
26.10.2016
12:07:36
в общем случае единственный способ - открыть на запись и попытаться писать

Stanislav
26.10.2016
12:07:37
Как это реализовать?

Zart
26.10.2016
12:07:52
!=

is not применяется в 99% лишь с None

Stanislav
26.10.2016
12:08:32
У меня там Nonы, просто я для наглядности

Zart
26.10.2016
12:08:34
если ты не понимаешь что оно делает, тогда запомни что is None/is not None, во всех остальных случаях обычные ==, !=

Stanislav
26.10.2016
12:08:51
Ну а вообщем, как сделать методом?

Johnnie
26.10.2016
12:09:06
опять блять со своими методами

Zart
26.10.2016
12:09:11
сделать что? и вообще, откуда прилетел список?

Stanislav
26.10.2016
12:09:12
Типо там lst.del_all('\n')

Zart
26.10.2016
12:09:31
A
26.10.2016
12:09:31
в общем случае единственный способ - открыть на запись и попытаться писать
если файл существует, мне нужно переименовать существующий, а затем создать новый, куда уже буду писать.

Stanislav
26.10.2016
12:09:48
нет такого
Т.е юзать filter?

Google
Zart
26.10.2016
12:10:30
возможно

Stanislav
26.10.2016
12:11:52
Ладно, спс

Я думал есть что-то типа такого

Zart
26.10.2016
12:12:17
есть remove, но он только первое вхождение удалит

Stanislav
26.10.2016
12:12:34
def remove_all_elements(lst,element=None): return list(filter(lambda x: x is not element, lst))

Проблемы с названиями еще

Умереть можно

Zart
26.10.2016
12:13:14
опять он говно какое-то написал

A
26.10.2016
12:13:14
Типо там lst.del_all('\n')
оберни всё в отдельную комманду

Zart
26.10.2016
12:13:31
зачем ты впидарасил is not element?

>>> l = ['fuck', '\n', 'you', '\n'] >>> list(filter('\n'.__ne__, l)) ['fuck', 'you']

Stanislav
26.10.2016
12:14:47
Zart
26.10.2016
12:15:13
filter(None, ... тогда?

хотя тогда оно будет удалять еще и пустые строки

Stanislav
26.10.2016
12:16:25
Главное что работает Потом может переделаю для других элементов, но щас None

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

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