Python 在数据帧上迭代时的不同值

Python 在数据帧上迭代时的不同值,python,pandas,dataframe,Python,Pandas,Dataframe,我有一个数据框: name lat lon 0 9999 25.147289 101.362893 1 10000 48.646000 8.701000 2 10001 48.646000 8.991000 3 10002 48.646000 9.453000 4 10003 48.646000 9.881000 当我迭代pandas数据帧并尝试获取每行的值时: for row in df.ite

我有一个数据框:

     name        lat         lon
0    9999  25.147289  101.362893
1   10000  48.646000    8.701000
2   10001  48.646000    8.991000
3   10002  48.646000    9.453000
4   10003  48.646000    9.881000
当我迭代pandas数据帧并尝试获取每行的值时:

for row in df.iterrows():
    print(row[1]['lat'])
我得到
25.14728900000001


为什么额外的数字以及如何获得
25.147289

数据帧中的浮点值以
数据类型指定的精度存储。您看到的显示内容由pandas
display.float\u格式控制,该格式设置为6位精度。这不会改变幕后的实际浮动

如果您想让打印报表为您取整

for row in df.iterrows():
    print('{:0.6f}'.format(row[1]['lat']))

25.147289
48.646000
48.646000
48.646000
48.646000

谢谢@piRSquared,如果我强迫它浮动呢?所以
float(row[1]['lat']
?它已经是
float
float(row[1]['lat'])
不会做任何与它已经做的不同的事情。