相关疑难解决方法(0)

__str__和__repr__之间的区别?

之间有什么区别__str____repr____str__

python repr magic-methods

2545
推荐指数
21
解决办法
61万
查看次数

为什么Python3中的print函数是十进制数?

如果我在python2.7控制台上运行它,它给我输出为:

>>> 1.2 - 1.0
0.19999999999999996

>>> print 1.2 - 1.0 
0.2
Run Code Online (Sandbox Code Playgroud)

我在python3.5.2中运行相同的操作

>>> 1.2 - 1.0
0.19999999999999996

>>> print(1.2 - 1.0)
0.19999999999999996
Run Code Online (Sandbox Code Playgroud)

我想知道为什么在python2.7.12打印语句只给我0.2但在python3.5.2打印函数给我0.19999999999999996.

python python-2.7 python-3.x

5
推荐指数
1
解决办法
385
查看次数

当字典 - python中显示时,浮动打印的方式不同

我正在用这个简单的代码创建一个字典:

pixel_histogram = {}
min_value = -0.2
max_value = 0.2
interval_size = (math.fabs(min_value) + math.fabs(max_value))/bins

for i in range(bins):
    key = min_value+(i*interval_size)
    print key
    pixel_histogram[key] = 0
    print pixel_histogram
Run Code Online (Sandbox Code Playgroud)

但我有点惊讶,因为我的印刷品得到了这些值:

#Printing keys
-0.2
-0.16
-0.12
-0.08
-0.04
0.0
0.04
0.08
0.12
0.16

#Printing the dictionary
{0.0: 0, 
-0.08000000000000002: 0, 
0.15999999999999998: 0, 
-0.16: 0, 
0.12: 0, 
-0.12000000000000001: 0, 
0.08000000000000002: 0, 
-0.04000000000000001: 0, 
-0.2: 0, 
0.03999999999999998: 0}
Run Code Online (Sandbox Code Playgroud)

我没弄清楚为什么值不同,我怎么能解决这个问题.任何帮助,将不胜感激.谢谢.

python dictionary numbers key

3
推荐指数
1
解决办法
802
查看次数

相同生成器函数的不同调用中的最后十进制数字精度变化[python]

我创建了这个生成器函数:

def myRange(start,stop,step):
    r = start
    while r < stop:
        yield r
        r += step
Run Code Online (Sandbox Code Playgroud)

我用两种不同的方式使用它.第一名:

for x in myRange(0,1,0.1):
    print x
Run Code Online (Sandbox Code Playgroud)

结果:

0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1.0
Run Code Online (Sandbox Code Playgroud)

第二种方式调用函数:

a = [x for x in myRange(0,1,0.1)]
Run Code Online (Sandbox Code Playgroud)

这导致:

[0, 0.1, 0.2, 0.30000000000000004, 0.4, 0.5, 0.6, 0.7, 0.7999999999999999, 0.8999999999999999, 0.9999999999999999]
Run Code Online (Sandbox Code Playgroud)

为什么生成的值不同?

python function generator floating-point-precision

3
推荐指数
1
解决办法
120
查看次数