from datetime import datetime from flask import Flask, render_template, request import pandas as pd app = Flask(__name__) # 首页 @app.route('/') def index(): return render_template('index.html') # 登记数据页面 @app.route('/record', methods=['GET', 'POST']) def record(): if request.method == 'POST': # 获取表单数据 date_str = request.form['date'] shift = request.form['shift'] line = request.form['line'] machine = request.form['machine'] issue = request.form['issue'] isn = request.form['isn'] # 转换日期格式为datetime类型 date = datetime.strptime(date_str, '%Y-%m-%d') # 将数据保存到Excel文件 data = pd.DataFrame({ '日期': [date], '班次': [shift], '线别': [line], '不良机种': [machine], '不良现象': [issue], '不良ISN': [isn] }) filepath = 'D:/data.xlsx' data.to_excel(filepath, index=False, header=False if not pd.read_excel(filepath).size else True) return '<h1>数据已保存</h1>' else: return render_template('record.html') # 查询数据页面 @app.route('/query', methods=['GET', 'POST']) def query(): if request.method == 'POST': # 获取表单数据 date_str = request.form['date'] line = request.form['line'] machine = request.form['machine'] issue = request.form['issue'] # 转换日期格式为datetime类型 date = datetime.strptime(date_str, '%Y-%m-%d') # 从Excel文件中查询数据 data = pd.read_excel('D:/data.xlsx') query = data[(data['日期'] == date) & (data['线别'] == line) & (data['不良机种'] == machine) & (data['不良现象'] == issue)] query_html = query.to_html() return query_html else: return render_template('query.html') if __name__ == '__main__': app.run()
时间: 2024-04-03 08:35:40 浏览: 89
这段代码是用 Flask 框架实现的一个简单的数据登记和查询系统。其中,index() 函数返回网站的首页,record() 函数处理数据登记页面,query() 函数处理数据查询页面。数据存储在 Excel 文件中,使用 pandas 库读写 Excel 文件。你可以通过访问网站的不同路由来进行数据登记和查询操作。如果你想要运行这段代码,需要安装 Flask 和 pandas 库,并在本地运行 Flask 应用。
相关问题
``` import pandas as pd from datetime import datetime quotes = pd.read_json("quotes.jl", lines=True) quotes ```
这个Python代码段存在一个常见问题:文件扩展名`jl`通常表示Julia语言的文件,但在Pandas中读取JSON数据时应该使用`.json`扩展名。此外,如果文件不存在或格式有问题,可能会导致读取失败。下面是修改后的代码以及可能的错误分析和修复:
1. 错误分析:
- `quotes.jl`可能是一个错误的文件名,需要检查文件是否真的存在并且是.json格式。
- `lines=True`参数在pandas的`read_json()`函数中并非必需,除非你处理的是每行是一条记录的特殊格式的文本文件。
2. 修复后的代码:
```markdown
```python
import pandas as pd
from datetime import datetime
# 检查文件路径和扩展名
quotes_path = "quotes.json" # 将jl改为json
try:
quotes = pd.read_json(quotes_path, lines=False) # 去掉lines参数,默认为False(即逐行解析)
except FileNotFoundError:
print(f"文件'{quotes_path}'未找到,请确保文件路径正确且文件存在。")
else:
print(quotes.head()) # 输出前几行数据查看是否读取成功
```
请注意,如果你的数据确实是以每行一条记录的方式存储的JSON文件,并且`lines=True`是正确的选择,则可以保留这一参数。
import pandas as pd import re from sqlalchemy import create_engine import shutil import os import rarfile import datetime都是什么意思
这是一段 Python 代码,它导入了 pandas、re、sqlalchemy、shutil 和 rarfile 库,创建了一个数据库引擎,并定义了一个当前时间变量。具体代码含义如下:
- import pandas as pd:导入 pandas 库,并给它起了一个别名 pd,方便在代码中使用。
- import re:导入 re 库,用于进行正则表达式的匹配操作。
- from sqlalchemy import create_engine:从 sqlalchemy 库中导入 create_engine 函数,用于创建数据库引擎。
- import shutil:导入 shutil 库,用于文件和文件夹的操作。
- import os:导入 os 模块,用于执行操作系统的相关功能。
- import rarfile:导入 rarfile 库,用于解压 rar 格式文件。
- import datetime:导入 datetime 模块,用于处理日期和时间。
阅读全文