内容正文:
8.3模版和静态文件
一、选择题
1. Flask渲染模板的核心函数是( )
A. render() B. template() C. render_template() D. render_html()
【答案】C
【解析】实现模板渲染的核心函数是 render_template() ,A、B、D均为错误的函数名,无对应功能。
2. 以下关于Flask模板的说法,错误的是( )
A. 模板能分离业务逻辑和页面展示
B. 模板文件可存放在项目根目录
C. 使用Jinja2引擎渲染模板
D. 支持通过变量实现前后端数据交互
【答案】B
【解析】模板文件必须存放在 templates 文件夹,直接放在项目根目录会导致 render_template 无法识别;A、C、D均为模板的正确特性。
3. HTML中引入Flask静态JS文件,正确的语法是( )
A. <script src="static/hello.js"></script>
B. <script src="{{ url_for('static', filename='hello.js') }}"></script>
C. <script src="url_for('static', filename='hello.js')"></script>
D. <script src="/static/hello.js"></script>
【答案】B
【解析】通过 {{ url_for('static', filename='文件名') }} 生成静态文件URL,A、D为硬编码路径,C未将 url_for 嵌套在 {{}} 中,无法被Flask解析。
4. 登录验证案例部分代码如下,处理表单数据的路由是( )
@app.route("/login_check")
def func_login_check():
name = request.args.get("name")
pwd = request.args.get("pwd")
A. / B. /login C. /login_check D. /check
【答案】C
【解析】表单 action 属性指向 ../login_check ,后端绑定 /login_check 路由处理验证逻辑,
5. 若要在模板中渲染字典 {"gender":"男"} 的 gender 值,正确的写法是( )
A. {{ gender }} B. {{ dic.gender }}
C. {{ dic["gender"] }} D. {gender}
【答案】A
【解析】通过 **dic 传递字典后,模板中可直接通过 {{键名}} 渲染值;若直接传递字典变量,则需用B或C写法,因此A正确。
6. Flask中静态文件的默认存放文件夹是( )
A. templates B. static C. js D. css
【答案】B
【解析】静态文件需存放在 static 文件夹, templates 用于存放模板文件,C、D为静态文件的子文件夹。
7. 以下代码中,能实现点击按钮触发 hello() JS函数的是( )
A. <input type="button" onclick="hello" value="单击">
B. <input type="button" onclick="hello()" value="单击">
C. <input type="button" click="hello()" value="单击">
D. <input type="button" onlick="hello()" value="单击">
【答案】B
【解析】HTML中绑定点击事件的属性为 onclick ,且函数调用需加 () ,A缺少 () 、C属性名错误、D拼写错误,均无法触发函数。
8. 登录验证案例部分代码如下, func_login_check() 函数的返回值是( )
def func_login_check():
name = request.args.get("name")
pwd = request.args.get("pwd")
if name == "admin" and pwd == "123456":
check_status = "login success"
else:
check_status = "login fail"
return check_status
A. HTML页面 B. 字典数据
C. login success 或 login fail 字符串 D. 重定向地址
【答案】C
【解析】函数通过条件判断,返回 login success 或 login fail 的字符串
9. 从Flask中导入 render_template 和 request 的正确语句是( )
A. import flask
B. from flask import render_template, request
C. from flask import *
D. import render_template, request from flask
【答案】ABC
【解析】采用 from flask import * 的导入方式,可直接使用 render_template 和 request ;B为精准导入方式;A需通过 flask.render_template 调用,D语法错误。
10. 模板中传递变量 name="hello world" ,渲染后页面显示的内容是( )
A. {{ name }} B. hello world C. name D. hello_world
【答案】B
【解析】Jinja2引擎会将 {{ name }} 替换为传递的 hello world 字符串,因此页面显示该文本,A为未渲染的占位符,C、D与传递值不符。
二、判断题
1. Flask的模板引擎是Jinja2,支持用 {{变量名}} 渲染数据。( )
【答案】√
【解析】Flask使用Jinja2模板引擎,且 {{变量名}} 是模板变量的标准格式。
2. 静态文件可以存放在 templates 文件夹中,不影响Flask解析。( )
【答案】×
【解析】静态文件需存放在 static 文件夹, templates 仅用于存放模板文件,若将静态文件放入 templates , url_for 无法识别路径。
3. 登录验证案例中,表单默认使用POST方法提交数据。( )
【答案】×
【解析】表单未指定 method 属性,默认使用GET方法提交, request.args.get() 用于获取GET数据,POST方法需手动指定 method="post" 。
4. 通过 render_template("show.html", **dic) 可以将字典 dic 的键值对作为模板变量传递。( )
【答案】√
【解析】采用 **字典 的形式传递变量,这是Flask传递多变量的常用方式,可实现字典键与模板变量名的对应。
5. url_for('static', filename='hello.js') 的作用是直接执行 hello.js 文件中的代码。( )
【答案】×
【解析】 url_for 函数的作用是生成静态文件的URL地址,供HTML标签引入文件使用,而非直接执行JS代码,JS代码的执行由浏览器解析 <script> 标签完成。
三、填空题
1. Flask中,使用______函数可以渲染模板文件并返回给用户。
【答案】 render_template
【解析】模板渲染函数为 render_template ,需传入模板文件名及可选的变量参数。
2.request属性中,与上传文件有关的数据属性是:______。
【答案】 files
3. HTML中引入Flask静态文件时,需将 url_for 函数的结果放在______符号中。
【答案】 {{ }}
【解析】Jinja2模板语法中,动态生成的内容需嵌套在 {{ }} 中,才能被Flask解析。
4. HTML中内嵌js代码用的是______标签
【答案】 <script>
5. Flask项目中独立的.js文件需要放在______文件夹下
【答案】static
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
$
8.3模版和静态文件
一、选择题
1. Flask渲染模板的核心函数是( )
A. render() B. template() C. render_template() D. render_html()
2. 以下关于Flask模板的说法,错误的是( )
A. 模板能分离业务逻辑和页面展示
B. 模板文件可存放在项目根目录
C. 使用Jinja2引擎渲染模板
D. 支持通过变量实现前后端数据交互
3. HTML中引入Flask静态JS文件,正确的语法是( )
A. <script src="static/hello.js"></script>
B. <script src="{{ url_for('static', filename='hello.js') }}"></script>
C. <script src="url_for('static', filename='hello.js')"></script>
D. <script src="/static/hello.js"></script>
4. 登录验证案例部分代码如下,处理表单数据的路由是( )
@app.route("/login_check")
def func_login_check():
name = request.args.get("name")
pwd = request.args.get("pwd")
A. / B. /login C. /login_check D. /check
5. 若要在模板中渲染字典 {"gender":"男"} 的 gender 值,正确的写法是( )
A. {{ gender }} B. {{ dic.gender }}
C. {{ dic["gender"] }} D. {gender}
6. Flask中静态文件的默认存放文件夹是( )
A. templates B. static C. js D. css
7. 以下代码中,能实现点击按钮触发 hello() JS函数的是( )
A. <input type="button" onclick="hello" value="单击">
B. <input type="button" onclick="hello()" value="单击">
C. <input type="button" click="hello()" value="单击">
D. <input type="button" onlick="hello()" value="单击">
8. 登录验证案例部分代码如下, func_login_check() 函数的返回值是( )
def func_login_check():
name = request.args.get("name")
pwd = request.args.get("pwd")
if name == "admin" and pwd == "123456":
check_status = "login success"
else:
check_status = "login fail"
return check_status
A. HTML页面 B. 字典数据
C. login success 或 login fail 字符串 D. 重定向地址
9. 从Flask中导入 render_template 和 request 的正确语句是( )
A. import flask
B. from flask import render_template, request
C. from flask import *
D. import render_template, request from flask
10. 模板中传递变量 name="hello world" ,渲染后页面显示的内容是( )
A. {{ name }} B. hello world C. name D. hello_world
二、判断题
1. Flask的模板引擎是Jinja2,支持用 {{变量名}} 渲染数据。( )
2. 静态文件可以存放在 templates 文件夹中,不影响Flask解析。( )
3. 登录验证案例中,表单默认使用POST方法提交数据。( )
4. 通过 render_template("show.html", **dic) 可以将字典 dic 的键值对作为模板变量传递。( )
5. url_for('static', filename='hello.js') 的作用是直接执行 hello.js 文件中的代码。( )
三、填空题
1. Flask中,使用______函数可以渲染模板文件并返回给用户。
2.request属性中,与上传文件有关的数据属性是:______。
3. HTML中引入Flask静态文件时,需将 url_for 函数的结果放在______符号中。
4. HTML中内嵌js代码用的是______标签
5. Flask项目中独立的.js文件需要放在______文件夹下
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
$