Est-il correct de l'appeler expansion variable? Comment incorporer des nombres dans des variables de chaîne.
rubis
name = "World"
month = 9
day = 9
print "Hellow #{name}!,aujourd'hui#{month}/#{day}est"
C'est celui que vous voulez voir.
À la suite d'une enquête
name = "World"
month = 9
day = 9
print u"Hellow {name}!,aujourd'hui{month}/{day}est".format(**locals())
Il semble écrire. .format (** locaux ())
deviendra rapidement ennuyeux, et si vous l'utilisez en continu
Parce que ça a l'air assez bruyant
f = lambda x, l=locals(): x.format(**l)
print f(u"Hellow {name}!,aujourd'hui{month}/{day}est")
Ferez-vous cela?
L'idée est de le déployer en utilisant Jinja.
>>> from jinja2 import Template
>>> fj = lambda str, dict=locals(): Template(str).render(dict)
>>> name = "World"
>>> month = 9
>>> day = 9
>>> print fj(u"Hellow {{name}}!,aujourd'hui{{month}}/{{day}}est.")
Hellow World!,9 aujourd'hui/Il est 9.
>>> print fj(u"demain{{month}}/{{day+1}}est.")
9 demain/Il est 10.
C'est comme ça. Je ne sais pas grand-chose sur l'utilisation de Jinja, mais je peux calculer un peu, donc ça peut être bien.
http://stackoverflow.com/questions/19549980/short-form-for-string-format-locals
Recommended Posts