module documentation
Format a message
Function | format |
String-like interpolation for bytes objects. |
Function | format |
Format a string with the given dict. Be a bit more verbose than default python about the error cause. |
String-like interpolation for bytes objects.
NOTE: This is a compatibility wrapper for older versions (<3.5) of Python 3 which do not support the percent operator ('%') for bytes objects. This function should be removed (and replaced by simple '%') when Python 3.5 has gained wide enough adoption.
>>> format_b(b'%s %d', b'foo', 123) b'foo 123' >>> format_b(b'foo 123') b'foo 123' >>> format_b('%s %d', b'foo', 123) Traceback (most recent call last): ... AttributeError: 'str' object has no attribute 'decode'
Format a string with the given dict. Be a bit more verbose than default python about the error cause.
>>> format_str("%(foo)", {}) Traceback (most recent call last): ... gbp.errors.GbpError: Failed to format %(foo): Missing value 'foo' in {} >>> format_str("%(foo)", {'foo': 'bar'}) Traceback (most recent call last): ... gbp.errors.GbpError: Failed to format %(foo) with {'foo': 'bar'}: incomplete format >>> format_str("A %(foo)s is a %(bar)s", {'foo': 'dog', 'bar': 'mamal'}) 'A dog is a mamal'