Text formatting error: ‘=’ alignment not allowed in string format specifier

The error message occurs because '=' alignment has been implied by the format specifier.

The str.format format spec mini-language parser has decided on the
alignment specifier “=” because:

Preceding the width field by a zero (‘0’) character enables
sign-aware zero-padding for numeric types. This is equivalent to a
fill character of ‘0’ with an alignment type of ‘=’.

So by specifying 0N as the “zero-padding to N width”, you have implied both “the input is a numeric type”, and “the zeros should go between the sign and the digits”. That latter implication is what is meant by '=' alignment.

Since the value "1" is not numeric, the “=”-alignment handling code raises that exception. The message is written expecting you know what it’s talking about because you requested (by implication) the “=” alignment.

Yes, I think that error message needs to be improved. I’ve raised an issue for that.

Leave a Comment

Hata!: SQLSTATE[HY000] [1045] Access denied for user 'divattrend_liink'@'localhost' (using password: YES)