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

Страница 632 из 1885
Liyoto
26.10.2016
17:44:26
да . само собой))

F
26.10.2016
17:44:58
по памяти хз как в питоне это сделать, но в общем случае тебе надо будет обернуть этот вызов в while (pass not entered_pass)

Liyoto
26.10.2016
17:46:00
сейчас попробую

/login = input('Введите логин: ') pass1 = input('\nВведите пароль: ') pass2 = ('qqq' , '111' , 'qwerty111') while pass1 not pass2: print('Неверный пароль, повторите попытку') инвалид ситакс while pass1 not pass2 ^

Google
V
26.10.2016
17:54:29
def merge_lists_with_dicts(lst1, lst2): result = [] for i in range(0, len(lst1)): result.append({**lst1[i], **lst2[i]}) return result
бгг, я ж именно для этой задачи выше однострочник написал

[{**a, **b} for a, b in zip(ld1, ld2) if b is not None] вернет список объединенных словарей

последняя проверка не нужна, если ты уверен, что они не None

Igor
26.10.2016
17:56:04
есть еще zip_longest, как выше напомнил кто-то

а, с анпакингом это ж не поможет. сорри )

Igor
26.10.2016
18:10:54
я хз че у вас за проблемы возникли

In [1]: from getpass import getpass In [2]: my_password = 'hello' In [3]: entered_password = None In [4]: while entered_password != my_password: ...: entered_password = getpass('Пароль: ')

либо для наглядности: In [1]: my_password = 'hello' In [2]: entered_password = None In [3]: while my_password != entered_password: ...: entered_password = input('Password: ') ...: Password: privet Password: govno Password: hello In [4]:

Kirill
26.10.2016
18:15:55
посоны, я спарсил что надо с текста, но у меня вместо одного пробела по 2-4 как это устранить? с помощью регулярок*

Igor
26.10.2016
18:15:56
если нужен счетчик попыток и прерывание цикла, то добавляем переменную (attempts = 0), и каждую итерацию цикла прибавляем к ней единичку. а когда она превышает, например, 5, то выходим из цикла и шлем юзера нафиг

Google
Igor
26.10.2016
18:16:34
возможно, r'[ ]{2,}'

\s{2,} не стоит делать, т.к. там могут быть табы и переносы строк

Liyoto
26.10.2016
18:17:58
Благодарю

если нужен счетчик попыток и прерывание цикла, то добавляем переменную (attempts = 0), и каждую итерацию цикла прибавляем к ней единичку. а когда она превышает, например, 5, то выходим из цикла и шлем юзера нафиг

Igor
26.10.2016
18:19:18
посоны, я спарсил что надо с текста, но у меня вместо одного пробела по 2-4 как это устранить? с помощью регулярок*
In [4]: import re In [5]: text = 'hello world cruel\nworld' In [6]: re.sub? Signature: re.sub(pattern, repl, string, count=0, flags=0) In [7]: re.sub(r' {2,}', ' ', text) Out[7]: 'hello world cruel\nworld'

{2,} - это 2 и более повторяющихся символа, стоящих перед открывающейся фигурной скобкой

Kirill
26.10.2016
18:20:11
благодарствую

Igor
26.10.2016
18:20:15
если хочешь именно от 2 до 4, то {2,4}

Kirill
26.10.2016
18:20:40
это можно вписать сразу в регулярку? или отдельно надо делать

Igor
26.10.2016
18:20:55
конечно можно, я ж вон показал

re.sub( r' {2,}', # что заменяем (2 и более пробела) ' ', # на что заменяем (на один пробел) text # в какой строке заменяем (в text, которая равна "hello world cruel\nworld") )

Kirill
26.10.2016
18:27:32
я имел ввиду вот что: r"[,;() {2,}\n+\s+-]"," ",text это можно записать чтобы сразу получилось 1 пробел между словами или надо еще раз через регулярку результат этого выражения пропустить?

re.sub(r"[,;() {2,}\n+\s+-]"," ",file1.read())

Igor
26.10.2016
18:29:35
эмм у тебя там че-то дофига всего понамешано \s будет совпадать и с пробелом, и с \t, и с \n

Kirill
26.10.2016
18:29:36
как красивые текста сюда сидать? подстажите, господа.

кидать*

Igor
26.10.2016
18:30:04
по одному или по три бэктика (символ `, на букве "ё" в английской раскладке обычно, рядом с тильдой) с каджой стороны текста

F
26.10.2016
18:30:10
я кажись придумал как модели для чата сделать

щащащ

Google
Igor
26.10.2016
18:30:20
re.sub(r"[,;() {2,}\n+\s+-]"," ",file1.read())
я б на группы разбил

F
26.10.2016
18:30:29
сукпздц с работы пришел и вот чем занимаюсь

Igor
26.10.2016
18:30:59
re.sub(r"(группа1|группа2|группа3)"," ", file1.read())

re.sub(r"([,;()\n+\s+-]| {2,})"," ",file1.read()) ^^^^^^^^^^^^^|^^^^^)"," ",file1.read()) группа 1 грп.2

Kirill
26.10.2016
18:31:48
re.sub(r"(группа1|группа2|группа3)"," ", file1.read())
я пока не настолько крут, слабо понимаю что это |

F
26.10.2016
18:32:15
class Dialog(models.Model): first_user = models.OneToOneField('User') second_user = models.OneToOneField('User') last_message = models.DateTimeField(null=True, blank=True) class Message(models.Model): text = models.TextField() datetime = models.DateTimeField(auto_now_add=True, db_index=True) read = models.BooleanField(default=False) dialog = models.ForeignKey('Dialog') def update_last_message_datetime(sender, instance, created, **kwargs): if not created: return Dialog.objects.filter(id=instance.dialog.id).update( last_message=instance.datetime ) post_save.connect(update_last_message_datetime, sender=Message)

тадаа

Igor
26.10.2016
18:32:22
re.sub(r"([,;()\n+\s+-]| {2,})"," ",file1.read()) ^^^^^^^^^^^^^|^^^^^)"," ",file1.read()) группа 1 грп.2

Liyoto
26.10.2016
18:32:28
/ ф

ой

Igor
26.10.2016
18:32:39
ебучий телеграм под макось

F
26.10.2016
18:32:46
вопрос @iamigor какие поля индексными делать? хочу сделать все))

Liyoto
26.10.2016
18:32:46
как так кидать код ?

Igor
26.10.2016
18:32:54
вопрос @iamigor какие поля индексными делать? хочу сделать все))
сообщение точно не надо делать индексным

по одному или по три бэктика (символ `, на букве "ё" в английской раскладке обычно, рядом с тильдой) с каджой стороны текста

F
26.10.2016
18:33:00
на макоси на тильду трижды в начале и в конце

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

Liyoto
26.10.2016
18:34:05
a

благодарю

Google
F
26.10.2016
18:34:21
а с экрана непосредственно с чатами будет запрос на сервак за Диалогами, ну и там изи бризи дальше вроде

Igor
26.10.2016
18:34:48
вопрос @iamigor какие поля индексными делать? хочу сделать все))
ну мне в голову приходит 1) timestamp (он же created_at, sent_at, или как-нибудь так) 2) chat_id (если ты решил юзать id чатов) 3) sender_id 4) recipient_id

F
26.10.2016
18:34:53
но блин если я все поля индексными сделаю, то будет не очень

Igor
26.10.2016
18:35:14
я и говорю, не надо текст сообщения индексировать ;)

Igor
26.10.2016
18:35:37
что - остальное? че там у тебя еще?

F
26.10.2016
18:35:38
юзеров в Диалоге, я же по ним смотреть буду

Admin
ERROR: S client not available

Igor
26.10.2016
18:36:00
а, сорри, я успешно проигнорировал нахуй эту простыню

F
26.10.2016
18:36:36
был кст у вас в Рамблере на iOS #8, пиццы поел, выиграл лицензию на софт))

Igor
26.10.2016
18:36:47
в dialog индексы на first_user и second_user, в message - на dialog, на datetime, можно на read (чтобы быстро забирать с сервака только непрочтенные)

F
26.10.2016
18:36:49
круто там

Igor
26.10.2016
18:36:59
хочется дать пизды за first_user и second_user хочется дать пизды за datetime

F
26.10.2016
18:37:08
а как?

я нубас в питоне

мне не нравится тут именовать переменные с подчеркиванием, но так вроде в кодгайдах написано джанговских

Google
F
26.10.2016
18:37:51
так-то я больше по кеймлкейсу

Igor
26.10.2016
18:38:00
да я без претензий, просто манера общаться хуевая у меня :( обычно принято называть created_at, updated_at, sent_at, вот такое все

F
26.10.2016
18:38:29
да всё ок лол, я вообще про пидоров и анусы шутить люблю

на работе сдерживаюсь как могу

Igor
26.10.2016
18:38:38
и про педофилов!

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

о чем это я. я бы все-таки назвал юзеров не first и second, а sender (отправитель) и recipient (получатель)

звучит и выглядит более логично и понятно можно задействовать слова "from" и "to", как вариант (ну, типа, user_from и user_to)

F
26.10.2016
18:40:44
я не хотел дискриминировать юзеров в нейминге по очередности

Liyoto
26.10.2016
18:41:24
` passwords = ('11' , 'qqq' , 'qwerty') login = input('\nВведите логин: ') pass1 = input('\nВведите пароль: ') while pass1 not in passwords: print('\nНеврный пароль для учетной записи') input('Повторите пароль: ') else: print('HELLO World') `

блен

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

в чем ошиюка ?

ошибка*

Zart
26.10.2016
18:42:26
"изначально написан в переменной pass" как?!

V
26.10.2016
18:42:38
ебучий телеграм под макось
i can feel your pain! я иногда даже тупо на компе набиваю драфт, а отправляю с телефона чтоб точно не похерились бектики. сука бесит!

F
26.10.2016
18:42:41
ну цеж песочница

F
26.10.2016
18:43:03
у меня все норм в телеге

мб редко бектики юзаю)

Igor
26.10.2016
18:43:19
?
In [3]: pass = 'asdkalsjq38' File "<ipython-input-3-153a8c96b40a>", line 1 pass = 'asdkalsjq38' ^ SyntaxError: invalid syntax

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

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