BUG: fix precision to specify decimal places
- [x] closes #13257 
- [x] tests added / passed
- [x] passes `git diff upstream/master | flake8 --diff`
- [ ] whatsnew entry

Use 'f' as a string conversion type to specify the number of decimals to
represent. The 'g' format will instead fall back to the 'e' format
causing the unexpected behavior seen in GHI13257.

See: [old-string-formatting](https://docs.python.org/3.5/library/stdtypes.html#old-string-formatting)

Replicated code from the issue, with output:
<img width="702" alt="example output with precision" src="https://cloud.githubusercontent.com/assets/7526790/17386623/77eb83f4-59ba-11e6-8193-fde0e839a184.png">

Also, add tests with `Float64Index` like:

```
df = pd.DataFrame(data = np.random.randn(4,4),
                  index=[11.1, 22.2, 33.3, 44.4]
                  columns=[1.1111, 2.2222, 3.3333, 4.4444])
```
 ## [Current coverage](https://codecov.io/gh/pydata/pandas/pull/13897?src=pr) is 85.28% (diff: 100%)

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

``` diff
@@             master     #13897   diff @@
==========================================
  Files           139        139          
  Lines         50057      50057          
  Methods           0          0          
  Messages          0          0          
  Branches          0          0          
==========================================
- Hits          42692      42691     -1   
- Misses         7365       7366     +1   
  Partials          0          0          
```

> Powered by [Codecov](https://codecov.io?src=pr). Last update [45d54d0...0731bcb](https://codecov.io/gh/pydata/pandas/compare/45d54d067ed9a0dfdb456f253fb0bede9969187c...0731bcbc8dc1042a263ad99452443278911d6bfc?src=pr)
 @TomAugspurger ?

@drewrey pls add a whatsnew note (bug fix section)
 Changing it to `g` was intentional to avoid things like

``` python
In [1]: "{:f}".format(1)
Out[1]: '1.000000'
```

and instead have that formatted as `1`. I glanced quickly and didn't see any tests for that :/

Could you add a test with an integer and a float column like `1.0`, use the default precision / formatter, and verify that the display value is `1`, and then make sure your change passes that test?
 Looking further,  it seems like we have a bug in master.

``` python
m = pd.DataFrame({"a": [1], "b": [1.]})
```

`m.style._translate()['body'][0][1]['display_value']`  # should be '1', is correct

`m.style._translate()['body'][0][2]['display_value']`  # should be '1.0', currently is '1', is incorrect

Ideally `df.style` would have the same output as `df._repr_html()` by default.
 can you rebase / update?
 can you add a whatnew note in 0.19.2

@TomAugspurger ?
 closing, but if you'd like to update, pls do so.