我有一个文本文件,我在python中加载,我加载文件并拆分值。文本文件包含以下...
678John Jones 23501289100005670
999Arthur Dudley-Smith 40000956064012300
5789Bob Billards 04600230190048945
543780Helen W Anderson 53001945045000990
例如,我创建了一个名为Hours []的数组,然后将数字附加到...
Hours.append(int(line[26:30]))
这样做会将Hours [0]的值设为2350,但我希望有一个小数位,所以它应该是23.50
我无法弄清楚如何做到这一点,我能得到的任何帮助都会很棒
答案 0 :(得分:1)
只需使用浮点数:
Hours.append(float(line[26:30]) / 100.0)
或者,如果您要处理大数字,您可能需要查看十进制模块。
答案 1 :(得分:1)
取第一位,一个点,第二位:
>>> line = ' 678John Jones 23501289100005670'
>>> line[26:28] + '.' + line[28:30]
'23.50'
将其转换为数字单向:
>>> from decimal import Decimal
>>> Decimal('23.50')
Decimal('23.50')
如果你必须将它转换为浮点数,那么单尾零也不存在 - 23.5 == 23.50,只有当你把它格式化为字符串并且要求尾随零时它才会存在
>>> int(line[26:28]) + 0.01* int(line[28:30])
23.5
>>> '{0:0.2f}'.format(23.5)
'23.50'