当前位置:  开发笔记 > 编程语言 > 正文

Python字典:删除你的字符

如何解决《Python字典:删除你的字符》经验,为你挑选了3个好方法。



1> Raymond Hett..:

某些数据库(如Sqlite3)允许您定义转换器和适配器函数,因此您可以将文本检索为str而不是unicode.不幸的是,MongoDB没有为任何常用类型提供此选项,例如str,decimal或datetime:

http://api.mongodb.org/python/current/tutorial.html#a-note-on-unicode-strings

http://api.mongodb.org/python/current/faq.html#how-can-i-store-decimal-decimal-instances

http://api.mongodb.org/python/current/faq.html#how-can-i-save-a-datetime-date-instance

消除了Mongo选项后,在检索数据后编写Python代码进行转换.您可以编写一个遍历结果的递归函数来转换每个字段.

作为一个快速和肮脏的替代方案,这里有一点可能有用的黑客:

>>> import json, ast
>>> r = {u'name': u'A', u'primary_key': 1}
>>> ast.literal_eval(json.dumps(r))
{'name': 'A', 'primary_key': 1}



2> David Alber..:

u您看到的字符只是意味着它们是unicode字符串.

如果您不希望它们是unicode,您可以将它们编码为其他内容,例如ASCII.

>>> s = u'hi!'
>>> s
u'hi'

>>> s2 = s.encode('ascii')
>>> s2
'hi'



3> 小智..:

如果仅要将dict转换为json数据字符串,则可以执行以下操作:

>>> from bson.json_util import dumps
>>> data = {u'name': u'A', u'primary_key': 1}
>>> dumps(data)
'{"name": "A", "primary_key": 1}'

推荐阅读
mobiledu2402852413
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有