Найти - Пользователи
Полная версия: конвертировать int/float в string
Начало » Центр помощи » конвертировать int/float в string
1
Linux_er
Добрый день. у меня такой вопрос.

есть вещественное число, например: 34,25

необходимо преобразовать его в строку вида 34.25 (разделитель точка)
а также обратное преобразование из str 34.25 в float 34,25

много перерыл в инете, но ничего понятного не нашел.

помогите кто может, пожалуйста.
Singularity
Linux_er
есть вещественное число, например: 34,25
в питоне разделитель точка

Singularity
In [1]:  34,25
Out[1]: (34, 25) # python принял это за кортеж
In [2]: f = str(34.25)
In [3]: f
Out[3]: '34.25'
In [4]: float(f)
Out[4]: 34.25
In [5]: 
Linux_er
разделитель то точка.

вопрос в том что в виджете из класса QDoublespinBox() значения вводятся в формате: 0,00

поэтому мне и необходимо преобразовать число в формат: 0.00

или может есть способ сделать так, чтобы числа в виджете QDoublespinBox() вводились в виде 0.00?

вот в чем состоит проблема.
JOHN_16
Это не проблема, решение “в лоб”
>>> s='34,25'
>>> f=float(s.replace(',', '.'))
>>> f
34.25
>>> str(f).replace(',', '.')
'34.25'
py.user.next
JOHN_16
>>> str(f).replace(',', '.')
'34.25'
>>> s = '34,25'
>>> f = float(s.replace(',', '.'))
>>> f
34.25
>>> str(f).replace('.', ',')
'34,25'
>>>
doza_and
Linux_er
сделать так, чтобы числа в виджете QDoublespinBox() вводились в виде 0.00
Про QDoublespinBox не знаю, но обычно формат определяется настройками локали, этим он и лечится. При этом из контрола надо тащить сразу float а не преобразовывать из строки.
Rodegast
> вопрос в том что в виджете из класса QDoublespinBox() значения вводятся в формате: 0,00
Какая разница как они вводятся? У QDoublespinBox-а есть методы setValue и value, их и пользуй!
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB