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

Страница 169 из 1885
Zart
22.07.2016
15:52:30
потому что при сравнивании в булевом контексте интересует truthiness, а не то что результат реально совпадает с неким синглетоном

Sergey
22.07.2016
15:52:53
никогда
None от False как еще отличить?

а пустую строку?

Google
Zart
22.07.2016
15:53:05
is None

is False/is True нужны лишь если ты хочешь дополнительно проверку isinstance(x, bool)

None от False как еще отличить?
задача поставлена неверно

Sergey
22.07.2016
15:54:13
is None
т.е. писать if not x and x is not None: ?

как-то криво)

Zart
22.07.2016
15:54:44
ты одну бесмыслинуюхуиту поменял на другую бесмыслинуюхуиту. гратс.

Sergey
22.07.2016
15:54:48
is False и все

Zart
22.07.2016
15:54:56
но зачем?

Sergey
22.07.2016
15:55:09
3state logic?

Zart
22.07.2016
15:55:23
проверяем сперва на из нан

как вырожденный случай

Sergey
22.07.2016
15:55:40
а если условие только по False?

Zart
22.07.2016
15:56:01
в тристейте обычно нан особый случай, а остальные типовые

Google
Zart
22.07.2016
15:56:19
поэтому я не вижу зачем нужно городить специальный путь для фолса

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

так что я всё равно считаю что is False в корне неверен

я часто вместо False пишу 0, если позволяет

Sergey
22.07.2016
15:58:24
0 может быть значением вообще

полиморфизм же

Zart
22.07.2016
15:58:49
и? как ты перепрыгнул от тристейта к нулю?

Sergey
22.07.2016
15:59:01
тристейт лишь один из вариантов

Zart
22.07.2016
15:59:28
лишь один из вариантов в котором ты неправ, да

Zart
22.07.2016
16:00:16
ну

ирония просто зашкаливает

Sergey
22.07.2016
16:01:29
у меня вот двойное впечатление, с одной стороны ты создаешь впечатление умного челвоека, а с другой кажется, что реальных проектов ни разу не писал

Zart
22.07.2016
16:02:15
нет, ты

я лично уже напарывался на неработающий код, в котором какой-то мудак написал is False

Sergey
22.07.2016
16:03:05
а, это видимо травма детства, я понял

Zart
22.07.2016
16:03:06
и этот код был в стдлибе. в argparse.

а, нет. но где-то рядом афаир

кстати, а ты сам-то в пеп8 заглянул перед там как такую чушь нести?

Don't compare boolean values to True or False using == . Yes: if greeting: No: if greeting == True: Worse: if greeting is True: как Worse переводится, помним?

Google
Zart
22.07.2016
16:07:38
еще аргументы про мои травмы, пазазя

Sergey
22.07.2016
16:09:32
/usr/lib/python3.5 $ grep -r 'is True:' .|grep -v site-packages|wc -l 27 к слову, даже тут)

Zart
22.07.2016
16:09:59
какого контекста? это полный абзац про сравнение с буленами

Sergey
22.07.2016
16:10:16
там написано Don't compare boolean values to True or False using ==

и рекомендуется if/if not

т.е. писать if not x and x is not None: ?

Zart
22.07.2016
16:10:48
угу. на это сказано "No", а на is сказано Worse than No

/usr/lib/python3.5 $ grep -r 'is True:' .|grep -v site-packages|wc -l 27 к слову, даже тут)
смотрю исходники. все "is true" что я нахожу - в комментах

что, с понималкой плохо, да?

Sergey
22.07.2016
16:12:43
Zart
22.07.2016
16:13:11
в cookielib нашел. но там специально ловят мудаков, передающих булево

Sergey
22.07.2016
16:13:12
mey
22.07.2016
16:13:49
А можно вопрос, смотритe If type(a) == class int:

Zart
22.07.2016
16:13:54
в json проверка is потому что там вычленяются специальные объекты

mey
22.07.2016
16:14:04
Как это правильно сделать, я все перепробовала

Zart
22.07.2016
16:14:21
в mailbox - тристейт

Denis
22.07.2016
16:14:27
Zart
22.07.2016
16:14:32
правильно isinstance(x, int)

это проверка на то что x является экземпляром int или его сабкласса

Google
Denis
22.07.2016
16:14:53
Еще лучше через abc, но я не помню, как именно

Zart
22.07.2016
16:15:21
абц проверяется через isinstance, но вряд ли он тут нужен

mey
22.07.2016
16:15:24
Isinance(x, int) == True?

Zart
22.07.2016
16:15:33
бля

полчаса срача на эту тему, и вот пример

Denis
22.07.2016
16:15:50
if isinstance(x, int): print(42)

Admin
ERROR: S client not available

mey
23.07.2016
01:28:58
я опять немного слоупк, правильно или нет?)

Zart
23.07.2016
01:55:27
неправильно для чисел оканчивающихся на 11..14

и пробелов два

mey
23.07.2016
02:54:27
Почему

11 программист

Точно

Что-то не так

Подожди.

Смотри

111 программист, это неправильно ?

Google
Zart
23.07.2016
02:55:53
ты анализируешь только последнюю цифру, но в русском языке правила для числительных в диапазоне 10..20 отличаются от остальных

mey
23.07.2016
02:56:05
Ой, не люблю русский, я правила плохо знаю.

Zart
23.07.2016
02:57:06
ну в данном случае можно методом перебора проверить что и как должно быть

mey
23.07.2016
03:00:47
111 программист - это правильно?

Но 11 программистов,, да?

Zart
23.07.2016
03:01:19
"сто одиннадцать программистов"

так что нет

mey
23.07.2016
03:01:41
Почему?

Никто не говорит 111 программистов

Zart
23.07.2016
03:01:52
почему что?

все говорят

mey
23.07.2016
03:02:04
Все говорят 111 программист

Zart
23.07.2016
03:02:07
нет

см. выше

mey
23.07.2016
03:02:27
Хорршо

Zart
23.07.2016
03:05:43
Все говорят 111 программист
интересно, в какой это деревне? 8)

mey
23.07.2016
03:22:12
интересно, в какой это деревне? 8)
Лол только что у папы спросила, он тоже сказал '111 программист'?

Zart
23.07.2016
03:22:26
он так и сказал "111"?

вслух?

ничего не режет?

mey
23.07.2016
03:22:47
Сто одиннадцать

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

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