Python – преобразование/приведение с плавающей запятой, падающее на число, похожее на число [дубликат]Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Python – преобразование/приведение с плавающей запятой, падающее на число, похожее на число [дубликат]

Сообщение Anonymous »

РЕДАКТИРОВАТЬ: Проблема не в ЗНАКЕ МИНУС U+2212. Положительные числа также затронуты, как показано в списке ниже. И я попробовал sed 's/-/-/' infile > fixfile в командной строке, но проблема все еще возникает. Я добавил .replace(u'\u2212', '-') в открытую строку файла.
Я читаю серию чисел из форматированного текста/PDB. файл. Я пытаюсь сравнить значения со вторым файлом PDB. Однако, когда я читаю координаты X, Y, Z, я получаю сообщение об ошибке: ValueError: не удалось преобразовать строку в число с плавающей запятой: '-0.703'
Однако я это делаю не вижу никакой причины, по которой значение не является приемлемым числом с плавающей запятой. Я получаю эту ошибку с рядом чисел в файле, например (есть еще тысячи)
2.059
2.403
3.409
4.089
3.752
2.752
0.182
−0.328
−0.261
−1.454
−1.837
−2.352
−2.808
−2.184
−1.255
−2.206
−0.020
0.306
1.684

Но я не вижу причин, по которым эти значения с плавающей запятой были бы неприемлемы. Я попробовал добавить полосу на случай, если остались невидимые пробелы, но безуспешно.
for each in MArr:
if "ATOM" in each:
sub = each.split(" ")
sub = [x for x in sub if x != ""]

if sub[5] in MDict.keys():
MDict[sub[5]]["ResID"].append(sub[1])
MDict[sub[5]]["Line"].append(each)
try:
MDict[sub[5]]["XYZ"].append(float(sub[6]).strip())
except:
print(sub[6])
else:
MDict[sub[5]] = {"ResID":[],"Line":[], "XYZ":[]}
MDict[sub[5]]["ResID"].append(sub[1])
MDict[sub[5]]["Line"].append(each)
try:
MDict[sub[5]]["XYZ"].append(float(sub[6]).strip())
except:
print(sub[6])


Подробнее здесь: https://stackoverflow.com/questions/792 ... e-a-number
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»