- 1
- 2
In [9]: 0.14*100
Out[9]: 14.000000000000002
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
−1
In [9]: 0.14*100
Out[9]: 14.000000000000002
Питонобляди соснули!
Тааааааам где мне хочется быть!
И пуууууууусть я чуть-чуть округлюсь,
Но я! Я! Я остаюсь!
Я буду дроби хранить!
https://ideone.com/6Ffm24
Поддерживаю.
Помню много лет назад на ГК выясняли как в разных ЯП работают циклы по плавающим питухам в целом и сравнения в частности.
Так вот в РНР они в отличие от большинства остальных языков (о ужас!) все работало более-менее нормально, т.к. в либе были эпсилоны из коробки.
Распечатал твой комментарий, поместил в рамку и повесил на стену.
Уже и функции стали бросать исключения вместо ворнингов, и опциональные типы завезли. Скоро JIT напилят, auto type inference сбацают и всё будет вообще хорошо.
Неконсистентное дерьмо это ECMA 6, 7, 8, ...
То ли дело «PHP», который к 5ой версии докатился до того, что уже невозможно было сделать хуже.
Кстати, в "PHP" тоже 0.1 + 0.2 != 0.3, но при этом echo 0.1 + 0.2; выводит 0.3.
https://ideone.com/wedhua
А в рантайме не равно для Double:
https://ideone.com/gJU5Rq
И равно для Extended:
https://ideone.com/kwWkWx
Ага.
https://ideone.com/sc7eWp
print((0.7-0.4)<0.3,(0.7-0.4)==0.3,(0.7-0.4)) --true false 0.3
print((math.ceil((0.7-0.4)*10)/10) == 0.3) --true
А по ночам, когда никто не видит, открываю «VSCode» и теку ещё больше.
Именно поэтому я за «дроби».
то...
Здесь 0 –— это [DayOfWeek]::Monday.value__, а 1 –— это [System.Globalization.CalendarWeekRule]::FirstDay.value__
> (get-date)
Какой-то странный у вас «Лисп».
Аргументы GetWeekOfYear:
1) time: DateTime.
2) rule: CalendarWeekRule. Всего три варианта: 0, 1 или 2.
• [System.Globalization.CalendarWeekRule]::FirstDay или 0
Указывает, что первая неделя года начинается в первый день года и заканчивается перед назначенным первым днем недели.
Перевожу: первая неделя начинается 1 января и может быть неполной, если 1 января — это не понедельник (не первый день недели в общем случае). Ближайший к Новому году понедельник, следующий после 1 января, будет уже на второй неделе.
• [System.Globalization.CalendarWeekRule]::FirstFourDayWeek или 2
Указывает, что первой неделей года является первая неделя, состоящая из четырех или более дней, следующих перед назначенным первым днем недели.
Перевожу: этот вариант тебе никогда не пригодится.
• [System.Globalization.CalendarWeekRule]::FirstFullWeek или 1
Указывает, что первая неделя года начинается с назначенного первого дня недели, который встречается первым в году.
Перевожу: первая неделя начинается с ближайшего к Новому году понедельника (в общем случае с выбранного первого дня недели), даже если он позже первого января. Т. е. нумерация начинается с ближайшей к новому году полной недели. 1 января может оказаться в «нулевой» неделе, если оно выпало не на понедельник (не на первый день недели в общем случае).
3) firstDayOfWeek: DayOfWeek. Это тупо внутреннее представление первого дня недели.
В Восточной Европе и в странах, принявших ISO, (в Германии, например, ибо DIN, как и ГОСТы, обычно копируют ISO) неделю принято начинать с понедельника. По-виндовому это 1.
В Западном полушарии, а также в Японии и в Индии неделю принято начинать с воскресенья. По-виндовому это 0.
В исламских странах неделя может начинаться с субботы. По-виндовому это 6.
А расшифровку перепутал.
Здесь 0 — это [System.Globalization.CalendarWeekRule]::FirstDay.value__, а 1 — это [DayOfWeek]::Monday.value__.
Теперь всё точно.
Это же не vi(m), чтобы начинать команду с двоеточия.
os.exit()