Python 如何在web.py中按列返回sqlite3的表

Python 如何在web.py中按列返回sqlite3的表,python,sqlite,web.py,Python,Sqlite,Web.py,我正在练习web.py。在web服务器中,我有一个sqlite3数据库,我希望通过http访问返回它的记录。如何在browerse中的每条记录之间添加换行符 以下是我在浏览器中获得的内容,我想在每个rocord之间添加换行符,如: [('2017-02-23 10:19:13', 1.68, 1.01), ('2017-02-23 10:19:51', 1.03, 1.9), ('2017-02-23 10:21:41', 1.97, 1.6), ('2017-02

我正在练习web.py。在web服务器中,我有一个sqlite3数据库,我希望通过http访问返回它的记录。如何在browerse中的每条记录之间添加换行符

以下是我在浏览器中获得的内容,我想在每个rocord之间添加换行符,如:

[('2017-02-23 10:19:13', 1.68, 1.01),     
('2017-02-23 10:19:51', 1.03, 1.9),     
('2017-02-23 10:21:41', 1.97, 1.6),     
('2017-02-23 10:22:39', 1.57, 1.75),
我的代码如下:

import web
import sqlite3

render = web.template.render('templates/')

urls = (
    '/', 'index'
)


class index:
    def GET(self):
        conn = sqlite3.connect('customer-01.db')
        cursor = conn.execute("SELECT *  from datasource")
        return cursor.fetchall()

if __name__ == "__main__":
    app = web.application(urls, globals())
    app.run()
return cursor.fetchall返回文本,在浏览器中显示文本时没有任何特殊格式-这就是为什么它是一条长线

要使其在浏览器中看起来更好,请返回HTML。然后您可以在每行之间添加,或者将其格式化为表格,或者

您可以使用web.py模板,但由于您试图保持其简单性,因此只需显式设置内容类型并添加一些HTML即可

更新您的GET:

def GET(self):
    conn = sqlite3.connect('customer-01.db')
    cursor = conn.execute("SELECT * from datasource")
    web.header('Content-Type', 'text/html')    # you're sending HTML rather than text
    ret = [str(x) for x in cursor.fetchall()]  # Convert each row to string
    return '<br/>'.join(ret)                   # return single string, with <br/> between rows

嗨,乔,欢迎来到Stack Overflow!为了帮助人们回答您的问题,您能为我们提供一个解决方案吗?这样我们就可以了解您的尝试,并就最佳行动方案向您提供建议。干杯