BUG: float truncation in eval with py 2
- [x] closes #14241
- [x] tests added / passed
- [x] passes `git diff upstream/master | flake8 --diff`
- [x] whatsnew entry

Python 2 only - apparently `str()` rounds shorter than `repr()`

```
In [1]: f = 1000000000.006

In [2]: str(f)
Out[2]: '1000000000.01'

In [3]: repr(f)
Out[3]: '1000000000.006'
```

## [Current coverage](https://codecov.io/gh/pydata/pandas/pull/14255?src=pr) is 85.25% (diff: 100%)

> Merging [#14255](https://codecov.io/gh/pydata/pandas/pull/14255?src=pr) into [master](https://codecov.io/gh/pydata/pandas/branch/master?src=pr) will increase coverage by **<.01%**

``` diff
@@             master     #14255   diff @@
==========================================
  Files           140        140          
  Lines         50568      50572     +4   
  Methods           0          0          
  Messages          0          0          
  Branches          0          0          
==========================================
+ Hits          43112      43116     +4   
  Misses         7456       7456          
  Partials          0          0          
```

> Powered by [Codecov](https://codecov.io?src=pr). Last update [a7469cf...d679aa3](https://codecov.io/gh/pydata/pandas/compare/a7469cf98275a183ad2e4bfafa9706a1ef8d035e...d679aa34119a2e588ed70f3bf64795e3ec1d0f26?src=pr)
 can you change the pytables test to add 3 values, then have the scalar select the middle one select and having it return empty doesn't prove it works, more like proves it doesn't not work :>
 i don't know how equality of floats works in numexpr / HDF5

it might test well for us but fail on some platforms (just a guess) - so include if passes 
 thanks!
