Форматирование строк в python 2.x должно сделать это для вас:
>>> print '%.2f' % 315.15321531321
315.15
Это ограничивает представление строки всего двумя десятичными знаками. Обратите внимание, что если вы используете round(315.153215, 2)
, вы получите другое значение float, которое естественно неточно (или переоценено, в зависимости от того, как вы его смотрите):
>>> round(315.15321531321, 2)
315.14999999999998
Технически round()
является правильным, но он не «усекает» результаты по вашему запросу в 315.15
. Кроме того, если вы округлите значение, подобное 315.157, оно будет создавать нечто более близкое к 315.16 ... не уверен, что это то, что вы подразумеваете под «усечением».
Используя предоставленный вами опорный сайт, прямо над константой определено, что
Может присутствовать не более одного варианта копирования в каждой из следующих групп параметров, в противном случае поведение функций копирования не определено.
Таким образом, вы можете просто делать то, что говорят все остальные, и / или два значения вместе, поскольку они принадлежат к разным группам опций.
Это битовые флаги, поэтому
filesystem::copy(pathInput, pathOutput, filesystem::copy_options::recursive | filesystem::copy_options::overwrite_existing)
Чтобы добавить дополнительную детализацию, на более низком уровне каждый флаг представляет собой бит (вкл / выкл) в целом числе, так что ...
01 = перезаписать 10 = рекурсивно 11 = оба 00 = нет
the | оператор является двоичным или равен true, если один из бит (или оба) имеет значение true, поэтому:
01 | 10 = 11
00 | 11 = 11
11 | 11 = 11
00 | 00 = 00
blockquote>