os.popen действительно удерживается от использования в Python 2.6?

Вы могли проигнорировать десятичное число при парсинге (за исключением его местоположения). Скажите, что вход был: 156.7834e10... Это могло легко быть проанализировано в целое число 1 567 834 сопровождаемых e10, который Вы тогда измените к e6, так как десятичное число было 4 цифрами от конца части "цифры" плавания.

Точность является проблемой. Необходимо будет проверить спецификацию IEEE языка, который Вы используете. Если число битов в Мантиссе (или Часть) будет больше, чем число битов в Вашем Целом типе, то Вы возможно потеряете точность, когда кто-то введет в числе, таком как:

5123.123123e0 - преобразовывает в 5123123123 в нашем методе, который НЕ помещается в Целое число, но биты для 5,123123123 могут поместиться в мантиссу спецификации плавающей.

, Конечно, Вы могли использовать метод, который берет каждую цифру перед десятичным числом, умножает текущее общее количество (в плавании) на 10, затем добавляет новую цифру. Для цифр после десятичного числа умножьте цифру на растущую мощь 10 прежде, чем добавить к текущему общему количеству. Этот метод, кажется, уклоняется от предмета спора того, почему Вы делаете это вообще, однако, поскольку он требует использования примитива с плавающей точкой, не пользуясь легко доступными библиотеками парсинга.

Так или иначе, удачи!

7
задан Community 23 May 2017 в 12:16
поделиться

4 ответа

Одна вещь, о которой я могу подумать в том, что os.popen существует в python3, а os.popen2 - нет. Таким образом, один из них «более устарел», чем другой, и его удаление с языка запланировано раньше.

4
ответ дан 6 December 2019 в 21:18
поделиться

Вот PEP .

 Устаревшие модули и функции в стандартной библиотеке:

 - buildtools
 - cfmfile
 - commands.getstatus ()
 - macostools.touched ()
 - md5
 - MimeWriter
 - подражать
 - popen2, os.popen [234] ()
 - posixfile
 - наборы
 - ша
5
ответ дан 6 December 2019 в 21:18
поделиться

Тем временем я открыл тикет в системе отслеживания проблем Python. Я оставлю этот вопрос открытым до закрытия заявки.

3
ответ дан 6 December 2019 в 21:18
поделиться

commands.getstatusoutput по-прежнему использует его согласно документации 2.6.4.

0
ответ дан 6 December 2019 в 21:18
поделиться
Другие вопросы по тегам:

Похожие вопросы: