¿Por qué "% -d" o "% -e" eliminan el espacio inicial o cero?

En SO pregunta904928 (Python strftime - ¿fecha sin 0 a la izquierda?) Ryan respondió:

En realidad, tuve el mismo problema y me di cuenta de que, si agrega un guión entre el% y la letra, puede eliminar el cero inicial.

Por ejemplo% Y /% - m /% - d.

Me enfrenté al mismo problema y esa fue una gran solución, PERO, ¿por qué se comporta así?

>>> import datetime
>>> datetime.datetime(2015, 3, 5).strftime('%d')
'05'

>>> datetime.datetime(2015, 3, 5).strftime('%-d')
'5'

# It also works with a leading space
>>> datetime.datetime(2015, 3, 5).strftime('%e')
' 5'

>>> datetime.datetime(2015, 3, 5).strftime('%-e')
'5'

# Of course other numbers doesn't get stripped
>>> datetime.datetime(2015, 3, 15).strftime('%-e')
'15'

¿No puedo encontrar ninguna documentación al respecto? ->documentos de fecha y hora de Python / operaciones de cadena de python

Parece que esto no funciona en máquinas con Windows, bueno, yo no uso Windows, pero sería interesante saber por qué no funciona.

Respuestas a la pregunta(1)

Su respuesta a la pregunta