Как преобразовать входное число 34,6 в десятичную форму 34,6 в Python
Как преобразовать входное число 34,6 в десятичную форму 34,6 в python? Я сделал простую программу в pyqt4 GUI и в Германии Немцы считают ", " как "."Итак, как я могу преобразовать мое входное число" а " (редактирование строки )в десятичное?
def test(self):
a = int(self.ui.lineEdit.text())
b = int (self.ui.lineEdit_2.text())
Result = math.pow((a+b),2)
self.ui.lineEdit_3.setText(str(Result))
1 ответ:
Согласно in: здесь
Попробуйте это
from locale import * setlocale(LC_NUMERIC, '') # set to your default locale; for me this is # 'English_Canada.1252'. Or you could explicitly specify a locale in which floats # are formatted the way that you describe, if that's not how your locale works :) atof('123,456') # 123456.0 # To demonstrate, let's explicitly try a locale in which the comma is a # decimal point: setlocale(LC_NUMERIC, 'French_Canada.1252') atof('123,456') # 123.456
Возможно, ваш код может быть:
from locale import * def test(self): setlocale(LC_NUMERIC, 'French_Canada.1252') a = atof(self.ui.lineEdit.text()) b = atof(self.ui.lineEdit_2.text()) Result = math.pow((a+b),2) self.ui.lineEdit_3.setText(str(Result))