老表Max每日一题|最简单的Python Web 面试题

2023-11-07 19:29:36 浏览数 (2)

题目

实现一个简单的Web应用程序,该应用程序可以接受用户输入的数字,并将其加到一个列表中。用户可以通过访问特定的URL来查看列表中所有数字的和。

要求:

  1. 使用Python编写Web应用程序。
  2. 使用一个全局变量来保存数字的列表,并且该变量可以通过不同的函数进行读写。
  3. 实现两个URL:一个用于接受用户输入数字的POST请求,一个用于返回列表中所有数字的和的GET请求。
  4. 实现合适的错误处理机制,包括但不限于:请求方法不支持、非法输入等。
  5. 使用适当的框架或库来简化Web开发过程。

请编写代码实现上述要求,并在回答中给出你的解答。

最简答案

  • 首先,我们可以使用 Flask 框架来简化Web应用程序的开发过程。
  • 创建一个全局变量列表来保存用户输入的数字。
  • 实现一个POST请求的路由,用于接受用户输入的数字,并将其加入列表中。
  • 实现一个GET请求的路由,用于返回列表中所有数字的和。
  • 在处理请求时,需要对用户输入进行合法性验证,并对错误情况进行适当的处理。

代码如下:

代码语言:javascript复制
from flask import Flask, request

app = Flask(__name__)
numbers = []

@app.route('/add', methods=['POST'])
def add_number():
    try:
        number = int(request.form['number'])
        numbers.append(number)
        return 'Number added successfully'
    except ValueError:
        return 'Invalid input: must be an integer'
    except:
        return 'Internal Server Error'

@app.route('/sum', methods=['GET'])
def get_sum():
    return str(sum(numbers))

if __name__ == '__main__':
    app.run(host="0.0.0.0", port=5000)

使用方法:

  1. 使用pip安装Flask库:pip install flask
  2. 将上述代码保存为一个Python文件,比如test01.py
  3. 运行应用程序:python test01.py
  4. 可以使用POST请求发送数字到http://localhost:5000/add,比如使用cURL命令:curl -X POST -d "number=5" http://localhost:5000/add
  5. 可以使用GET请求获取数字的和,访问http://localhost:5000/sum

这样,用户就可以通过POST请求将数字添加到列表中,然后通过GET请求获取列表中所有数字的和。

0 人点赞