I came upon this question which was similar to something I was trying to do, the only difference is that I needed some of the variables for my f-string evaluated early and then defer other f-string variables to be determined later.
So to borrow from the original example, here's how I pulled it off:
from datetime import date
now = date.today()
names = ["foo", "bar"]
# double bracket allows `name` to be evaluated by the next format() call
template_a = f"The current name is {{name}} and the current date is {now}."
for name in names:
print (template_a.format(name=name))