回答
你不能索引的浮动这样。这不是一个集合。有关如何浮点数工作的详细信息,请阅读http://docs.oracle.com/cd/E19957-01/806-3568/ncg_goldberg.html
数学库为您提供了一种方式来获得与数字的两个部分的元组虽然
>>> import math
>>> a = 1.23
>>> math.modf(a)
(0.22999999999999998, 1.0)
这是不是因为这样的exacct表示浮点数,但值大约为1e-17。
当然,这始终是可能的太...
>>> map(int, str(a).split('.'))
[1, 23]
这看起来像我在找什么。准确地解释我在做什么。我希望能够以小时输入一个值,然后将它们转换为分钟。所以,如果它是1.20,我会乘以60乘以60,然后加20。我确定必须有一个更简单的方法:)格式化抱歉,这只是我的第二个问题,并且试图去掌握网站。 – 2014-09-18 18:00:16
如果您正在处理时间问题,那么您肯定应该使用时间模块,而不是试图将浮点强制转换为奇怪的时间表示。 – munk 2014-09-18 18:20:48
如果你正在寻找时间算术,你应该使用为此设计的timedelta对象。 '将datetimetime导入为dt; dt.timedelta(hours = 1,minutes = 20).seconds // 60' – b10n 2014-09-18 18:21:47
在评论munkhd的回答你说:
我也希望能够输入一个值小时,然后将它们转换为分钟。 所以,如果是1.20我要乘1 60再加入20 我肯定必须有一个更简单的方法:)
因此你的程序将获得1.20的字符串。所以,你可以使用它的字符串的方法,例如
>>> dotted_time = '1.20'
>>> h, m = [int(s) for s in dotted_time.split('.')]
>>> print h, m
1 20
>>> minutes = 60*h + m
>>> hours = minutes/60.0
>>> print minutes, hours
80 1.33333333333
或者,你可以做colon_time = dotted_time.replace('.', ':')
; colon_time
采用标准时间函数可以理解和操作的格式。这可能是更合理的处理方式,如果您想要处理像'1.20.30'这样的秒数,那么.replace('.', ':')
将转换为'1:20:30',这将很容易应对。
这很难,检测注释中的实际问题;)(+1) – Wolf 2014-09-21 10:12:50
除了PM 2Ring's answer似乎解决[1]您的实际问题,将其转换为字符串后,可能会“指数花车”,当然,但要注意精度的限制。因此,使用内置的round
功能来定义您的解决方案所需的精度:
s = str(round(a, 2)) # round a to two digits
现在,你可以申请你想给它的所有字符串函数。之后,您可能需要将结果转换回float
或int
...
[1]其他人已经建议这样的:与普通机型在高层次的语言处理像时间像蟒蛇时,期望通过reliable solutions that are already there支持。
- 1. .loc在Pandas-Python中建立索引
- 2. 如何在数组中设置浮点索引的值
- 3. 在Neo4j中建立索引
- 4. 在SQL中建立索引
- 5. Solr为Sitecore建立索引
- 6. Python:索引浮动?
- 7. 如何为搜索引擎建立文本索引?
- 8. 在Python中,如何使用另一个列表为列表建立索引?
- 9. 如何在MongoDB或Mongoid中为散列字段建立索引?
- 10. 如何使用array_to_string在Postgresql中为varchar数组建立索引?
- 11. 如何在Google Search Appliance中为大文件建立索引?
- 12. 如何在Perl中为一堆文件建立索引?
- 13. 如何在Lua中为多个数据类型数组建立索引值?
- 14. 浮点值作为C++数组中的索引
- 15. 在MySQL上建立索引
- 16. 如何为搜索引擎中的Silverlight应用程序建立索引?
- 17. Mysql Innodb在大多数为空值的列上建立索引
- 18. 如何强制索引属性为数字(或浮点数)?
- 19. 如何在python中做浮点运算?
- 20. 如何在Python中对列表建立索引以提取字符串存在的多个点?例如,
- 21. 在ElasticSearch建立索引后搜索
- 22. 如何数组的索引值在python
- 23. 为姓氏和名字建立索引
- 24. 如何在此Java代码中引入浮点值?
- 25. 更改浮点索引值的字符串索引值熊猫系列
- 26. 如何json_encode在PHP 7.1.1中浮点值?
- 27. 如何在NSArray中存储浮点值?
- 28. 如何在logstash conf中建立索引时添加文件名
- 29. 如何在MATLAB中建立数据序列的索引?
- 30. 如何使用列表索引在java中建立一个类
你为什么称这个操作为“索引”?这听起来像是在选择和操作数字的字符串表示的部分方面。如果是这样,你会想要停止考虑文本方面的数字,并开始考虑数字操作。在这里,它看起来像是要向下舍入或向下舍入为零。 – user2357112 2014-09-18 17:49:46
[在python中将数字拆分为整数和小数部分](http://stackoverflow.com/questions/6681743/splitting-a-number-into-the-integer-and-decimal-parts-in- python) – munk 2014-09-18 17:53:23
你实际的问题很[很难察觉](http://stackoverflow.com/questions/25919129/how-do-you-index-a-float-value-in-python/25958114#comment40573206_25919190)。 – Wolf 2014-09-21 10:16:03