输入数据来自外部API。整数应转换为人类可读的货币,最后两位数字为便士值。
例如:我收到这个:'0000000702870'。我需要格式7.028,70
。
最后两个值始终是便士值。
我尝试
float(value)
但是我得到了702870.0
还有这个
def convert_received_value_parser(value, sep='.'):
value = str(value)
return value if len(value) <= 4 else convert_received_value_parser(value[:-5], sep) + sep + value[-5:]
但是,它不起作用。
答案 0 :(得分:1)
您可以尝试以下方法:
value = '0000000702870'
v = float(value)/100
import locale
locale.setlocale(locale.LC_ALL,'pt_BR')
out = locale.format('%.2f',v,grouping=True)
print(out)
输出:
'7.028,70'