⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 listing26-5.py

📁 《Beginning Python--From Novice to Professional》 的源码
💻 PY
字号:
#!/usr/bin/pythonprint 'Content-type: text/html\n'import cgitb; cgitb.enable()import psycopgconn = psycopg.connect('dbname=foo user=bar')curs = conn.cursor()print """<html>  <head>    <title>The FooBar Bulletin Board</title>  </head>  <body>    <h1>The FooBar Bulletin Board</h1>    """curs.execute('SELECT * FROM messages')rows = curs.dictfetchall()toplevel = []children = {}for row in rows:    parent_id = row['reply_to']    if parent_id is None:        toplevel.append(row)    else:        children.setdefault(parent_id,[]).append(row)def format(row):    print '<p><a href="view.cgi?id=%(id)i">%(subject)s</a></p>' % row    try: kids = children[row['id']]    except KeyError: pass    else:        print '<blockquote>'        for kid in kids:            format(kid)        print '</blockquote>'print '<p>'for row in toplevel:    format(row)print """    </p>    <hr />    <p><a href="edit.cgi">Post message</a></p>  </body></html>"""

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -