python字符串格式化函数
我有一堆字符串格式的数字,我想了解一些关于函数的想法来格式化这些数字 前 输入00000000.00-应输出0.00 输入00000123.00-应输出123.00 输入0000-123.00-应输出-123.00 输入00-00123.45-应输出-123.45 输入-0000123.00-应输出-123.00 输入00000000.-5-应输出-0.05 输入0000000-.25-应输出-0.25 对于包含负号的字符串,我能想到的一个解决方案如下 前任。 num=“0000-123.00”python字符串格式化函数,python,Python,我有一堆字符串格式的数字,我想了解一些关于函数的想法来格式化这些数字 前 输入00000000.00-应输出0.00 输入00000123.00-应输出123.00 输入0000-123.00-应输出-123.00 输入00-00123.45-应输出-123.45 输入-0000123.00-应输出-123.00 输入00000000.-5-应输出-0.05 输入0000000-.25-应输出-0.25 对于包含负号的字符串,我能想到的一个解决方案如下 前任。 num=“0000-123.00”
这将使我的num为-0000123.00,但我不确定如何去掉前导零。您可以这样解析数字:
def parse_funky_numstring(s):
neg = s.count('-') % 2
s = s.replace('-', '0')
num = float(s)
return -num if neg else num
然后使用Python的字符串格式对其进行格式化
num = "{:0.2f}".format(parse_funky_numstring(s))
如果不是第六个输入示例,您可以简单地执行
float(s.lstrip('0'))
@如果这个答案是好的,你应该接受它。
num = "{:0.2f}".format(parse_funky_numstring(s))