Also, why abandon printf-style? All languages tend to converge to printf over time, it's simply the most tried and tested model out there!
>>> '%i' % 's' Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: %i format: a number is required, not str >>> '{}'.format('s') 's' >>> '{}'.format(10) '10'