内容正文:
8.2网络应用程序开发
一、选择题
1. Flask中,@app.route("/") 的作用是( )
A. 定义视图函数的名称
B. 将根URL与视图函数绑定
C. 运行Flask应用
D. 开启调试模式
2. 停止本地运行的Flask服务,可使用的快捷键是( )
A. Ctrl+V B. Ctrl+C C. Ctrl+D D. Ctrl+Z
3. 以下代码中,能实现“访问 /hello/xiaoming 显示‘欢迎xiaoming访问!’”的动态路由代码是( )
A.
@app.route("/hello/<name>")
def hello(name):
return "欢迎%s访问!" % name
B.
@app.route("/hello/name")
def hello(name):
return "欢迎%s访问!" % name
C.
@app.route("/hello")
def hello(xiaoming):
return "欢迎xiaoming访问!"
D.
@app.route("/hello/<name>")
def hello():
return "欢迎%s访问!" % name
4. PyCharm社区版中创建Flask项目的正确方式是( )
A. 直接选择“Flask”项目模板
B. 先创建纯Python项目,再手动配置Flask
C. 通过 pip install flask 自动创建项目
D. 选择“Django”模板后修改为Flask
5. redirect(url_for("admin")) 的作用是( )
A. 定义 admin 视图函数的路由
B. 构造 admin 的URL并跳转到该地址
C. 获取 admin 视图函数的请求参数
D. 响应 admin 的POST请求
6. Flask应用默认运行的主机和端口是( )
A. 127.0.0.1:8080 B. 0.0.0.0:5000
C. 127.0.0.1:5000 D. localhost:80
7. 以下关于Flask调试模式的描述,错误的是( )
A. 调试模式下修改代码,服务器会自动重载
B. 调试模式会显示详细的错误堆栈信息
C. 生产环境可以开启调试模式
D. 可通过PyCharm的运行配置开启调试模式
8. 要将同一个视图函数绑定到 /test1 和 /test2 两个URL,正确的写法是( )
A.
@app.route("/test1")
@app.route("/test2")
def test():
return "测试页面"
B.
@app.route("/test1", "/test2")
def test():
return "测试页面"
C.
@app.route("/test1")
def test():
return "测试页面"
@app.route("/test2")
def test():
return "测试页面"
D.
@app.route("/test1|/test2")
def test():
return "测试页面"
9. request.method 的作用是( )
A. 获取请求的URL地址
B. 获取请求使用的HTTP方法
C. 获取请求的表单数据
D. 获取请求的查询参数
10. 以下代码中,能正确返回HTML标签的Flask视图函数是( )
A.
@app.route("/hello")
def hello():
return "<h1>hello world</h1>"
B.
@app.route("/hello")
def hello():
return "h1>hello world</h1>"
C.
@app.route("/hello")
def hello():
return html("<h1>hello world</h1>")
D.
@app.route("/hello")
def hello():
h1 = "<h1>hello world</h1>"
return h1()
二、判断题
1. Flask是一个用Python编写的Web应用程序框架。( )
2. @app.route() 装饰器的作用是定义视图函数的执行顺序。( )
3. Flask的静态文件需放在项目根目录的 templates 文件夹下。( )
4. 动态参数路由中,视图函数的参数名必须与路由中的变量名一致。( )
5. request.args 可以获取POST方法提交的表单数据。( )
三、填空题
1. Flask中,运行应用程序的方法是______。
2. 要让Flask应用被局域网其他设备访问,需将 app.run() 的 host 参数设置为______。
3. Flask中,使用______函数可以实现页面重定向。
4. 视图函数中,通过 return render_template("index.html") 渲染模板时, index.html 需放在______文件夹中。
5. 获取Flask中POST请求的表单数据,需使用 request 对象的______属性。
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
$
8.2网络应用程序开发
一、选择题
1. Flask中,@app.route("/") 的作用是( )
A. 定义视图函数的名称
B. 将根URL与视图函数绑定
C. 运行Flask应用
D. 开启调试模式
【答案】B
【解析】 @app.route() 是路由装饰器,作用是将URL与对应的视图函数建立映射关系, "/" 代表根URL;A选项视图函数名称由 def 函数名() 定义;C选项由 app.run() 实现;D选项由 debug=True 实现。
2. 停止本地运行的Flask服务,可使用的快捷键是( )
A. Ctrl+V B. Ctrl+C C. Ctrl+D D. Ctrl+Z
【答案】B
【解析】按下 Ctrl+C 组合键可终止Flask本地服务,其他快捷键无此功能。
3. 以下代码中,能实现“访问 /hello/xiaoming 显示‘欢迎xiaoming访问!’”的动态路由代码是( )
A.
@app.route("/hello/<name>")
def hello(name):
return "欢迎%s访问!" % name
B.
@app.route("/hello/name")
def hello(name):
return "欢迎%s访问!" % name
C.
@app.route("/hello")
def hello(xiaoming):
return "欢迎xiaoming访问!"
D.
@app.route("/hello/<name>")
def hello():
return "欢迎%s访问!" % name
【答案】A
4. PyCharm社区版中创建Flask项目的正确方式是( )
A. 直接选择“Flask”项目模板
B. 先创建纯Python项目,再手动配置Flask
C. 通过 pip install flask 自动创建项目
D. 选择“Django”模板后修改为Flask
【答案】B
【解析】PyCharm社区版无Flask项目模板,需先创建纯Python项目,再手动安装Flask并编写代码;A是专业版的操作,C、D选项方法错误。
5. redirect(url_for("admin")) 的作用是( )
A. 定义 admin 视图函数的路由
B. 构造 admin 的URL并跳转到该地址
C. 获取 admin 视图函数的请求参数
D. 响应 admin 的POST请求
【答案】B
【解析】 redirect() 函数用于页面重定向,需传入URL字符串;结合 url_for() 可先构造视图函数对应的URL,再实现重定向,这是教材中重定向功能的标准用法。
6. Flask应用默认运行的主机和端口是( )
A. 127.0.0.1:8080 B. 0.0.0.0:5000
C. 127.0.0.1:5000 D. localhost:80
【答案】C
【解析】Flask的 app.run() 方法默认监听本地回环地址 127.0.0.1 ,端口为5000;A、B、D选项的主机或端口不符合默认配置。
7. 以下关于Flask调试模式的描述,错误的是( )
A. 调试模式下修改代码,服务器会自动重载
B. 调试模式会显示详细的错误堆栈信息
C. 生产环境可以开启调试模式
D. 可通过PyCharm的运行配置开启调试模式
【答案】C
【解析】Flask调试模式存在安全风险,绝对不能在生产环境开启;A、B、D均为调试模式的正确特性和开启方式。
8. 要将同一个视图函数绑定到 /test1 和 /test2 两个URL,正确的写法是( )
A.
@app.route("/test1")
@app.route("/test2")
def test():
return "测试页面"
B.
@app.route("/test1", "/test2")
def test():
return "测试页面"
C.
@app.route("/test1")
def test():
return "测试页面"
@app.route("/test2")
def test():
return "测试页面"
D.
@app.route("/test1|/test2")
def test():
return "测试页面"
【答案】A
【解析】Flask中为视图函数绑定多个URL,需叠加多个 @app.route() 装饰器;B、D选项的路由参数格式错误,C选项重复定义同名函数会导致覆盖。
9. request.method 的作用是( )
A. 获取请求的URL地址
B. 获取请求使用的HTTP方法
C. 获取请求的表单数据
D. 获取请求的查询参数
【答案】B
【解析】request 属性表明确, method 属性用于获取当前请求的HTTP方法;A无对应 request 属性,C是 request.form 的作用,D是 request.args 的作用。
10. 以下代码中,能正确返回HTML标签的Flask视图函数是( )
A.
@app.route("/hello")
def hello():
return "<h1>hello world</h1>"
B.
@app.route("/hello")
def hello():
return "h1>hello world</h1>"
C.
@app.route("/hello")
def hello():
return html("<h1>hello world</h1>")
D.
@app.route("/hello")
def hello():
h1 = "<h1>hello world</h1>"
return h1()
【答案】A
【解析】Flask视图函数可直接返回HTML字符串,浏览器会自动解析标签;B选项缺少左 < 符号,C选项无 html() 函数,D选项将字符串当作函数调用,均存在错误。
二、判断题
1. Flask是一个用Python编写的Web应用程序框架。( )
【答案】√
【解析】Flask是Python编写的轻量级Web框架,用于快速开发Web应用。
2. @app.route() 装饰器的作用是定义视图函数的执行顺序。( )
【答案】×
【解析】 @app.route() 的核心作用是将URL与视图函数绑定,而非定义执行顺序,视图函数的执行由用户请求的URL决定。
3. Flask的静态文件需放在项目根目录的 templates 文件夹下。( )
【答案】×
【解析】Flask规定静态文件需放在 static 文件夹, templates 文件夹用于存放HTML模板文件。
4. 动态参数路由中,视图函数的参数名必须与路由中的变量名一致。( )
【答案】√
【解析】路由中 <name> 对应的视图函数必须定义 name 参数,否则会出现参数不匹配错误。
5. request.args 可以获取POST方法提交的表单数据。( )
【答案】×
【解析】 request.args 用于获取GET方法的URL查询参数,POST表单数据需通过 request.form 获取。
三、填空题
1. Flask中,运行应用程序的方法是______。
【答案】 app.run()
【解析】使用 app.run() 方法启动本地Web服务器。
2. 要让Flask应用被局域网其他设备访问,需将 app.run() 的 host 参数设置为______。
【答案】 0.0.0.0
【解析】 127.0.0.1 仅本地可访问, 0.0.0.0 表示监听所有网络接口,允许局域网设备访问。
3. Flask中,使用______函数可以实现页面重定向。
【答案】 redirect
【解析】redirect() 函数接收URL字符串作为参数,实现页面跳转,常与 url_for() 配合使用。
4. 视图函数中,通过 return render_template("index.html") 渲染模板时, index.html 需放在______文件夹中。
【答案】 templates
【解析】Flask的 render_template() 函数默认从项目根目录的 templates 文件夹加载HTML模板文件。
5. 获取Flask中POST请求的表单数据,需使用 request 对象的______属性。
【答案】 form
【解析】 request 属性表明确, form 属性是存储表单参数的字典对象,专用于获取POST方法的表单数据。
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
$