# [Python 3.8], <s>52</s> 50 bytes
-2 bytes inspired by [EasyasPi's answer][1].
Produces some integers with probability \$\frac 2 {256}\$ and some with probability \$\frac 3 {256}\$ in each iteration. Output includes a trailing `.0` for each number.
<!-- language-all: lang-python -->
import os
while id:print(id:=os.urandom(1)[0]%100)
[Try it online!][TIO-kkhgve2q]
[Python 3.8 (pre-release)]: https://docs.python.org/3.8/
[TIO-kkhgve2q]: https://tio.run/##K6gsycjPM7YoKPr/PzO3IL@oRCG/mKs8IzMnVSEzxaqgKDOvRAPIsM0v1istSsxLyc/VMNSMNohVNTQw0Pz/HwA "Python 3.8 (pre-release) – Try It Online"
Uses the builtin function `id` to avoid assigning a new variable before the loop.
[`os.urandom(size)`][2] returns a `bytes` object with `size` random bytes. The `bytes` object behaves quite similar to a list of integers, which means `os.urandom(1)[0]` gives a single random integer from \$[0,255]\$, which we map to an integer from \$[0,99]\$ with a modulo operation.
---
# [Python 3.8], 53 bytes
Generates integers from a uniform distribution over \$[0, 99]\$.
<!-- language-all: lang-python -->
from random import*
while id:print(id:=randint(0,99))
[Try it online!][TIO-kkh0wocv]
[Python 3.8]: https://docs.python.org/3.8/
[TIO-kkh0wocv]: https://tio.run/##K6gsycjPM7YoKPr/P60oP1ehKDEvBUhl5hbkF5VocZVnZOakKmSmWBUUZeaVaAAZtiAVILaBjqWlpub//wA "Python 3.8 (pre-release) – Try It Online"
[1]: https://codegolf.stackexchange.com/a/218184/64121
[2]: https://docs.python.org/3/library/os.html#os.urandom