请教 Python 操作 Sqlite3 数据库和 Webpy 关于日期编码的问题

2015-11-12 19:35:13 +08:00
 Sargas
本人自学 Python 不久。今天学习用 Python 操作 Sqlite3 数据库时遇到一个问题,向大家请教一下。
Windows 环境下, UTF8 编码的数据库,其中的日期字段,在数据库内是 datetext 类型。直接写 Python 查询,返回显示“ 2015 年 11 月 12 日 星期四”;同样的代码,输出到 webpy 之后,在网页中显示的是 u'2015\u5e7412\u670831\u65e5 \u661f\u671f\u56db'这种。在数据库连接中设置 con.text_factory = str 之后, web 输出变成'2015\xe5\xb9\xb412\xe6\x9c\x8824\xe6\x97\xa5 \xe6\x98\x9f\xe6\x9c\x9f\xe5\x9b\x9b',这种。
我应该怎么处理才能让代码在 web 页面中也是显示成“ 2015 年 11 月 12 日 星期四”?
2800 次点击
所在节点    Python
3 条回复
goodryb
2015-11-12 22:54:21 +08:00
>>> a=u'2015\u5e7412\u670831\u65e5 \u661f\u671f\u56db'
>>> print a.encode('gbk')
2015 年 12 月 31 日 星期四
Sargas
2015-11-12 23:08:12 +08:00
@goodryb 谢谢!这个办法我知道,先按这个办法来吧。
liujianpc
2015-11-13 00:34:15 +08:00
Python 的编码问题和版本问题,真的很蛋疼

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/235736

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX