这个问题在这里已有答案:
///编辑:每个人都错了我的问题:(。我不问是否“”“”“”“是字符串,而不是为什么里面”“”“”“<h>
和<p>
不打印?而且如果是.html
文件我应该使用.format像bellow-
return render_template('letssayanything.html').format......////
这是代码 -
from flask import Flask
from datetime import datetime
app = Flask(__name__)
@app.route('/')
def homepage():
the_time = datetime.now().strftime("%A, %d %b %Y %l:%M %p")
return """
<h1>Hello heroku</h1>
<p>It is currently {time}.</p>
<img src="http://loremflickr.com/600/400">
""".format(time=the_time)
if __name__ == '__main__':
app.run(debug=True, use_reloader=True)
以下是我没有得到的部分 -
return """
<h1>Hello heroku</h1>
<p>It is currently {time}.</p>
<img src="http://loremflickr.com/600/400">
""".format(time=the_time
所以我的问题是,这些html行是如何运行的以及“”“”“”究竟是什么?如果可能的话,你可以告诉我,如果我使用html文件而不是那些html代码,我怎么能将.format(time=the_time)
附加到html文件?
HTML只是一个浏览器要解释的网站的静态描述;它(独自)不能“运行”。
三等于允许多行字符串或嵌套引号。例如:
my_string = """ multi
line "stuff" !!!"""
.format()
在这里做的是用实际时间替换HTML代码字符串的{time}
部分。
然后可以将其发送到请求页面的客户端。
您无法拥有与此程序具有相同功能的HTML文件,因为无法更新时间。
这就是服务器端代码(例如您在此处使用)用于生成HTML文件(通过使用正确的值格式化)然后将其发送到客户端的原因。