在HTML中显示Python值

在HTML中显示Python值,python,html,google-app-engine,Python,Html,Google App Engine,如何在html中显示python变量的值(在本例中,它是实体类的键) 来自google.appengine.ext导入数据库 类实体(db.Expando): 通过 e=实体() e、 put()#已分配id k=e.键()键已完成 id=k.id()#系统分配的id html=“” 键:%(k) ''' 我对google app engine了解不多,但在Python中,有两种方法: html=''' <html> <head></head>

如何在html中显示python变量的值(在本例中,它是实体类的键)

来自google.appengine.ext导入数据库
类实体(db.Expando):
通过
e=实体()
e、 put()#已分配id
k=e.键()键已完成
id=k.id()#系统分配的id
html=“”
键:%(k)

'''
我对google app engine了解不多,但在Python中,有两种方法:

html='''
<html>
    <head></head>
    <body>
        <label>Key: %(k)s </label>
        <br>            
    </body>
</html>
''' % locals() # Substitude %(k)s for your variable k
html=''
键:%(k)s

''%locals()#变量k的子级%(k)s
第二:

html='''
<html>
    <head></head>
    <body>
        <label>Key: {0[k]} </label>
        <br>            
    </body>
</html>
'''.format(locals())
html=''
键:{0[k]}

''。格式(局部变量())
实际上,还有第三种方式,我更喜欢,因为它是明确的:

html='''
<html>
    <head></head>
    <body>
        <label>Key: {0} </label>
        <br>            
    </body>
</html>
'''.format(k)
html=''
键:{0}

''。格式(k)
Mytemplate.html文件如下所示:

 <html>
   <head></head>
    <body>
     <label>{{key_val}}</label>
     <br>            
    </body>
 </html>

{{key_val}}


您的即时输出可能是:

<label>Key: {{k}} </label>
Key:{{k}
首先看一看基本的django模板

然后可能看看金甲2号


请参阅尼斯奥顿-也可以参阅下面的一个,其中显示了如何显式转义HTML值以防止跨站点脚本攻击。+1感谢您的回复和建议。我将学习和使用金甲2。但是因为我对Python和GAE都是新手,所以我认为在Python脚本中粘贴html可能更简单。
class Entity(db.Expando):
pass

e = Entity()    
e.put()         # id is assigned
k = e.key()     # key is complete
id = k.id()     # system assigned id

template = jinja_environment.get_template('templates/myTemplate')
self.response.write(template.render({'key_val':k}))
 <html>
   <head></head>
    <body>
     <label>{{key_val}}</label>
     <br>            
    </body>
 </html>
<label>Key: {{k}} </label>