Преобразовать строковое десятичное число ("anyValueD + anyValue) в числовое десятичное число в Python - PullRequest
0 голосов
/ 06 марта 2019

Я новичок в программировании на Python, и теперь я использую Python для обучения.Я читаю текстовый файл, чтобы получить данные.Я получил строковое значение, например "0.710000000000D + 02".И теперь мне нужно преобразовать это строковое значение в число с плавающей запятой или десятичное число, поэтому я запускаю:

val = float ("0.710000000000D + 02")

но это не удалось.

И я попробовал другое решение следующим образом:

val = [float (x) для x в переменной]

Но также не удалось.

На самом деле, это всего лишь обычное десятичное значение, например: 1D-02 = 0,01.Но я понятия не имею, как решить эту проблему в Python.

Кто-нибудь может помочь этой проблеме?Спасибо!

Ответы [ 2 ]

1 голос
/ 06 марта 2019

Кажется, в научной нотации.У меня была такая же проблема давным-давно.Попробуйте с

float('0.710000000000D+02'.replace("D", "E"))
0 голосов
/ 06 марта 2019

У меня есть решение.Просто замените «D» на «e»

str.replace («D», «e»)

Не сложный способ,но это работает!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...