There is no use case for allowing it but not allowing it is inconsistent with the other format specifiers (the zero flag, width, and precision is always allowed even if it has no effect).
I’d like to make this consistent, not because precision is useful but because there’s no reason for the inconsistency anymore.
I don’t think we should add something without a use case, just for consistencies sake. If no one has ever needed it; why add to the maintenance burden?
If anything I’d prefer %% to not support numbers between the % signs at all given they have no meaning. But only if that is less of a maintenance burden. Nobody should intentionally be using that, most think of %% as being a way to escape % to get a % sign.
I think I approached this the wrong way. My overall goal is to improve PyUnicode_FromFormat and there are two places where there is code left over from a previous version of the function that is no longer necessary: