使用python将标题添加到HTML表

时间:2016-12-01 19:21:18

标签: python html python-3.x

我有以下代码;

#!/usr/bin/python3
# Connect to the database.
import pymysql
conn = pymysql.connect(
db='srt_test2',
user='root',
passwd='',
host='localhost')
c = conn.cursor()

# Print the contents of the database.
c.execute("SELECT * FROM users")
all_data = c.fetchall()
my_list = []
for item in all_data :
   my_list.append([item[1],item[4]])

my_page = """

<!DOCTYPE html>
   <html>
      <head>
         <title>HTML Tables</title>
   </head>
   <body>
     <table border="1">
{MY_TABLE}
      </table>
   </body>
</html>
"""
my_string = ""

for item in my_list :
   my_string += "      <tr>\n"
   for element in item :
       my_string += "         <td>" + str(element) + "</td>\n"
   my_string += "      </tr>\n"
# Print necessary headers.
print("Content-Type: text/html")
print()

print(my_page.format(MY_TABLE=my_string))

当我打印元素1时,我如何才能获得“用户名”标题,当我打印元素4时如何才能获得“成绩”标题? 感谢

3 个答案:

答案 0 :(得分:2)

您可以使用th元素,如下所示:

 <table border="1">
 <tr><th>username</th><th>grade</th></tr>
 {MY_TABLE}
  </table>

答案 1 :(得分:0)

选项:

1. 字符串连接

  1. <击> Template Strings

  2. 功能齐全的模板系统,如jinja2

  3. 我还建议使用某种Web框架。

    编辑: 我想我误解了你的问题。 #3仍然是一个有效的选项,你可以 按照here

    显示你的循环

答案 2 :(得分:0)

如果你想要的只是为你的表格列添加标题,你可以像这样初始化你的my_string变量:

my_string = '<tr><th>username</th><th>grade</th></tr>'