
Aragaer
22.03.2019
21:10:52
а она в свою очередь опирается на системное tzdata

А
22.03.2019
21:19:09
Как тут использовать прокси?
import smtplib
toaddr = 'client@yandex.ru'
text='Your code 123'
server = smtplib.SMTP('smtp.mail.ru',587);server.starttls()
server.login(mail,password)
server.sendmail(mail,toaddr,text)
server.close()

ilya
22.03.2019
21:29:04
кто в vim могет?

Михаил
22.03.2019
21:29:59

Google

Artemis
22.03.2019
21:30:11

ilya
22.03.2019
21:30:30
я просто думал кто подскажет плюшки чем он лучше ide кроме скорости

Михаил
22.03.2019
21:31:29

ilya
22.03.2019
21:31:40
принял

Михаил
22.03.2019
21:32:21
А тут был какой-то холивар на эту тему?

Deep Sea
22.03.2019
21:32:39
vi предустановлен почти везде и есть даже в busybox

ilya
22.03.2019
21:32:59
я его юзаю при деплое джанги
и все

Deep Sea
22.03.2019
21:34:07
при деплое лучше бы вообще никуда не лазить руками, но это мелочи жизни

f472_
22.03.2019
21:38:17
При завершении программы выполняются абсолютно все блоки finally, или только тот, в try которого была программа в момент завершения?

Deep Sea
22.03.2019
21:39:14

Tishka17
22.03.2019
21:47:08

Google

Aragaer
22.03.2019
21:51:14
vi в busybox очень урезанный, аж до невозможности

Bogdan (SirEdvin)
22.03.2019
21:51:40
https://habr.com/ru/post/444594/ - мне интересно, я один не понимаю этого угорания по O-большому?

Aragaer
22.03.2019
21:52:07
угорания?

Artemis
22.03.2019
21:52:12

Bogdan (SirEdvin)
22.03.2019
21:52:31
Ну, уж явно не для применения в программировании

Aragaer
22.03.2019
21:52:54
ну да не для программирования
вон выше посмотри, человек жаловался, что у него цикл долго работает

Artemis
22.03.2019
21:53:23
Смотря что ты имеешь в виду под словом программирование. Для того, чтобы сайты верстать, анализ алгоритмов не нужен

Bogdan (SirEdvin)
22.03.2019
21:54:07
Для того, что бы писать любой код - анализ алгоримтов не нужен. Потому что это не имеет практически ни какого отношения к реальности.
Хотя нет, анализ алгоримтов при помощи такой нотации

Aragaer
22.03.2019
21:54:40
когда ты смотришь на код и говоришь "но это же говно, оно работает за куб!"
"а задача же тривиальная, неужели нельзя сделать за квадрат?"

Artemis
22.03.2019
21:55:03

Bogdan (SirEdvin)
22.03.2019
21:55:22

Aragaer
22.03.2019
21:55:30
естессно

Artemis
22.03.2019
21:55:34

Aragaer
22.03.2019
21:55:50
не, понятно, что оценивать константу тоже можно
но просто "вот код, он должен вызываться 100500 раз в секунду"

Bogdan (SirEdvin)
22.03.2019
21:56:30
Слышал. К чему это?
К тому что *нельзя* сравнивать алгоримты по О большому. Если вы так далее, вы делаете неправильно. В качестве примера можно привести умножение матриц, где самый асимптотически быстрый алгоритм имеет слишком большую константу и не используется.

Google

Bogdan (SirEdvin)
22.03.2019
21:56:51
И будут примеры посложнее?

Aragaer
22.03.2019
21:56:58
и ты такой - "ну можно сделать просто за логарифм, но это потребует квадрат памяти, а можно сделать за квадрат, но зато константа памяти"

Bogdan (SirEdvin)
22.03.2019
21:57:11
Что-то в духе, у тебя тут O( n * log n + m * log m + s^3), а ведь можно ..."

Aragaer
22.03.2019
21:57:16
и надо просто попробовать то и другое

Bogdan (SirEdvin)
22.03.2019
21:57:25

Aragaer
22.03.2019
21:57:32
естессно

Bogdan (SirEdvin)
22.03.2019
21:57:35
Потому что правильно высчитать константу у вас не получится

Aragaer
22.03.2019
21:57:40
и не надо

Bogdan (SirEdvin)
22.03.2019
21:57:45
Тогда зачем думать в терминах O-большого?

Aragaer
22.03.2019
21:57:45
конечно бенчмарки
но бенчмарк не даст готового ответа

Artemis
22.03.2019
21:57:56

Aragaer
22.03.2019
21:58:07
и если бенчмарк говорит "это хреново", то ты начинаешь думать, а можно ли сделать лучше

Bogdan (SirEdvin)
22.03.2019
21:58:13

Artemis
22.03.2019
21:58:29

Bogdan (SirEdvin)
22.03.2019
21:58:34

Aragaer
22.03.2019
21:58:43
"да, тут хреново, потому что квадрат.... а вообще, может есть способ сделать хотя бы за н лог н?... Требует переделать все структуры данных. Пробуем?"
потому что это разговоры, которые я реально регулярно слышу на работе

Artemis
22.03.2019
21:59:19

Google

Bogdan (SirEdvin)
22.03.2019
21:59:55
Кормен в помощь
У него там есть пруф, где он посчитал все алгоритмы и такой "ну вот, в 95% случаев все ок"? Сомневаюсь

Aragaer
22.03.2019
22:00:03
лайн профайлер покажет тебе, что на обработке массива в 1000 элементов ты пробегаешь по некоторой строке миллион раз.

Bogdan (SirEdvin)
22.03.2019
22:00:05

Artemis
22.03.2019
22:00:48

Bogdan (SirEdvin)
22.03.2019
22:01:29
А можно было бы сесть и погрустить, но орать оно проще, да. Ведь О-большое для ора всего-то log n?

Aragaer
22.03.2019
22:01:58
не, я не понимаю, чего не так в о-большом. Не рокет сайнс же
ты смотришь на код и видишь его о-большое.

Bogdan (SirEdvin)
22.03.2019
22:02:20
Ну, я не понимаю, зачем оно нужно, если есть бенчмарки

Aragaer
22.03.2019
22:02:25
их надо запускать

Bogdan (SirEdvin)
22.03.2019
22:02:35
Окей

Aragaer
22.03.2019
22:02:44
а на всяком эмбеддед оборудовании в дальних полях это бывает делать не очень удобно

Bogdan (SirEdvin)
22.03.2019
22:02:53
Какое будет О-большое от доставания элемента из словаря?
И в догонку, такой же вопрос про добавление элемента в конец обычного списка

Aragaer
22.03.2019
22:03:12
формально считается за константу, реально зависит от размера хэша
добавление в конец односвязного списка - линия от длины списка. Циклического - константа

Bogdan (SirEdvin)
22.03.2019
22:03:51
На самом деле, формально - O(m), где m - это максимальное количество коллизий

Artemis
22.03.2019
22:04:09

Google

Aragaer
22.03.2019
22:04:16
константа+время на аллокацию
потому что списки в питоне циклические и из связанных блоков

Artemis
22.03.2019
22:05:11
К тому же, ты понимаешь, что словарь это абстрактная структура данных и ее как следствие нельзя анализировать с помощью О?

Aragaer
22.03.2019
22:05:14

Tishka17
22.03.2019
22:05:41

Bogdan (SirEdvin)
22.03.2019
22:05:44
Кстати, не расскажешь как? А то я буду очень долго ковырять код

Aragaer
22.03.2019
22:06:16
для словаря там есть где-то логарифмы, но эти логарифмы ограничены сверху какими-то размерами, поэтому "не больше константы"

Artemis
22.03.2019
22:06:29

Tishka17
22.03.2019
22:06:53
https://m.habr.com/ru/post/247843/
Там хитро коллизии считаются

Deep Sea
22.03.2019
22:08:33
на дворе ж уже 3.7, а в нём словари упорядочены

Aragaer
22.03.2019
22:08:37
а у нас на работе кстати один человек действительно занимается тем, что пишет код для быстрого перемножения матриц, опираясь на какие-то там оптимизированные алгоритмы
но я не математик, деталей не знаю

Bogdan (SirEdvin)
22.03.2019
22:09:57
Такое же замечание как у человека выше, походу надо таки читать доку в коде :(
Что?)
Ну, вы же понимаете, что сложность алгоримтов должна как бы складывается? Если вы оцениваете алгоримт сверху, чисто по циклу, то это как-то очень странно