title: Fixed-point notation is not behaving acording to the documentation
body: <p>I want to format some values with a fixed precision of 3 unless it's an integer. In that case I don't want any decimal point or trailing 0s.</p>
  <p>Acording to the docs, the 'f' type in string formating should remove the decimal point if no digits follow it:</p>
  <blockquote>
  <p>If no digits follow the decimal point, the decimal point is also removed unless the # option is used.</p>
  </blockquote>
  <p>But testing it with python3.8 I get the following results:</p>
  <pre><code>&gt;&gt;&gt; f'{123:.3f}'
  '123.000'
  &gt;&gt;&gt; f'{123.0:.3f}'
  '123.000'
  </code></pre>
  <p>Am I misunderstanding something? How could I achive the desired result without using if else checks?</p>