Perl doesn't need the feature since perl interpolates variables in double quoted strings (as ikegami demonstrates above). Python can't do it the same way as perl because it doesn't have sigils (e.g. $@%) in front of its variables, so there's no way to tell what's variable and what's constant without some other markup. The sprintf function itself functions somewhat like what you describe, and has options to format the variable in various ways if using plain old double quote interpolation isn't good enough.
Oh, and using "placeholders" as you describe in a SQL query string is bad (while these sort of placeholders are good).