2011-11-28 16 views
6

Bu çok basit. Eminim ki aptalca bir şey eksik.python string.template nesnesinden string'e nasıl dönüştürülür

fp = open(r'D:\UserManagement\invitationTemplate.html', 'rb')   
html = Template(fp.read()) 
fp.close() 
html.safe_substitute(toFirstName='jibin',fromFirstName='Vishnu') 
print html 

Bu kodu doğrudan çeviricide çalıştırdığımda, doğru çıktıyı alıyorum. Ama bir dosyadan çalıştırdığımda <string.Template object at 0x012D33B0> olsun. Nasıl string.Template nesnesine dönüştürürüm. str(html) denedim. Güle güle baskı deyimi bu (dize dönüştürme) yapmak gerekiyordu değil mi?

cevap

10

safe_substitutedöner, bir dizi olarak, ikameler şablon yapılır. Bu şekilde, aynı şablonu birden fazla ikame için tekrar kullanabilirsiniz. Yani kod

print html.safe_substitute(toFirstName='jibin',fromFirstName='Vishnu') 
1

sonuç safe_substitute yöntemle döndürülür:

result = html.safe_substitute(toFirstName='jibin',fromFirstName='Vishnu') 
print result 
2

the docs göre sen safe_substitute

fp = open(r'D:\UserManagement\invitationTemplate.html', 'rb')   
html = Template(fp.read()) 
fp.close() 
result = html.safe_substitute(toFirstName='jibin',fromFirstName='Vishnu') 
print result 
dönüşü Değerini almalı olmak zorunda
İlgili konular