我目前有一个文本文件,该文本文件在文本文件“ incorrect_answers.txt” 中提交表单后,记录了“ {level number},{name},{answer}”,如下所示:< / p>
1, bob, answerone
1, nicky, answertwo
1, laura, answerthree
使用Python和Flask,我的目的是将数据显示在HTML页面上的表格中,如下所示:
| Level | Name | Answer |
| 1 | bob | answerone |
| 2 | nicky | answertwo |
| 3 | laura | answerthree |
此刻,我正在通过以下函数调用文本文件中的数据:
def get_incorrect_answers():
with open("data/incorrect_answers.txt", "r") as file:
incorrect_answers = file.readlines()
return incorrect_answers
此功能的结果当然是:
['1, bob, answerone\n', '1, nicky, answertwo\n', '1, laura, answerthree\n']
请问有人可以解释处理此输出的最佳方法,以便使我得到一个以HTML格式显示的表格,类似于上面显示的内容吗?
我无法访问列表中字符串中的值
答案 0 :(得分:0)
由于文本文件具有逗号分隔的值,请尝试
var obj1 = { 'a': 0, 's': 0 };
var obj2 = { 'a': 0, 's': 1 };
var newObj = {};
for (var x in obj1) {
if (obj2[x] && obj2[x] == obj1[x]) {
newObj[x] = obj1[x];
}
else if (obj2[x] && obj2[x] !== obj1[x]){
newObj[x] = 1;
}
}
答案 1 :(得分:0)
将数据传递到模板渲染器,然后通过循环在模板中渲染它,说这是名为mytable.html的模板
<table>
<thead>
<tr>
{% for subfield in column_names %}
<th>{{ subfield }}</th>
{% endfor %}
</tr>
{% for item in incorrect_answers %}
<tr>
{% for subitem in item %}
<td> {{ subitem }}</td>
</tr>
</thead>
然后用类似的东西渲染它
@app.route('/incorrect_answers')
def get_incorrect_answers():
with open("data/incorrect_answers.txt", "r") as file:
incorrect_answers = file.readlines()
return render_template('mytable.html', column_names=['Level', 'Name', 'Answer'],
incorrect_answers=incorrect_answers)
转到http://localhost:port/incorrect_answers时,您会看到模板出现。