相关疑难解决方法(0)

如何使类JSON可序列化

如何使Python类可序列化?

一个简单的课程:

class FileItem:
    def __init__(self, fname):
        self.fname = fname
Run Code Online (Sandbox Code Playgroud)

我该怎么做才能得到输出:

>>> import json

>>> my_file = FileItem('/foo/bar')
>>> json.dumps(my_file)
TypeError: Object of type 'FileItem' is not JSON serializable
Run Code Online (Sandbox Code Playgroud)

没有错误(__CODE__)

python serialization json

730
推荐指数
19
解决办法
61万
查看次数

Python和JavaScript之间的JSON日期时间

我想使用JSON从Python发送序列化形式的datetime.datetime对象,并使用JSON在JavaScript中反序列化.做这个的最好方式是什么?

javascript python json

388
推荐指数
8
解决办法
17万
查看次数

如何JSON序列化集?

我有一个set包含对象__hash__和__eq__方法的Python ,以确保集合中不包含任何重复项.

我需要对这个结果进行json编码set,但是将一个空值传递set给该json.dumps方法会引发一个问题TypeError.

  File "/usr/lib/python2.7/json/encoder.py", line 201, in encode
    chunks = self.iterencode(o, _one_shot=True)
  File "/usr/lib/python2.7/json/encoder.py", line 264, in iterencode
    return _iterencode(o, 0)
  File "/usr/lib/python2.7/json/encoder.py", line 178, in default
    raise TypeError(repr(o) + " is not JSON serializable")
TypeError: set([]) is not JSON serializable
Run Code Online (Sandbox Code Playgroud)

我知道我可以创建一个json.JSONEncoder具有自定义default方法的类的扩展,但我甚至不确定从哪里开始转换set.我应该set使用默认方法中的值创建字典,然后返回编码吗?理想情况下,我想使默认方法能够处理原始编码器所扼杀的所有数据类型(我使用Mongo作为数据源,所以日期似乎也引发了这个错误)

任何暗示正确的方向将不胜感激.

编辑:

谢谢你的回答!也许我应该更精确.

我在这里使用(和upvoted)答案来解决set被翻译的限制,但是内部键也是一个问题.

这些对象set是转换为的复杂对象__dict__,但它们本身也可以包含其属性的值,这些值可能不适用于json编码器中的基本类型.

这里有很多不同的类型set,哈希基本上计算了实体的唯一ID,但是在NoSQL的真正精神中,没有确切知道子对象包含的内容.

一个对象可能包含日期值 …

python serialization json set

138
推荐指数
9
解决办法
19万
查看次数

Python可序列化对象json

class gpagelet:
    """
    Holds   1) the pagelet xpath, which is a string
            2) the list of pagelet shingles, list
    """
    def __init__(self, parent):
        if not isinstance( parent, gwebpage):
            raise Exception("Parent must be an instance of gwebpage")
        self.parent = parent    # This must be a gwebpage instance
        self.xpath = None       # String
        self.visibleShingles = [] # list of tuples
        self.invisibleShingles = [] # list of tuples
        self.urls = [] # list of string

class gwebpage:
    """
    Holds all the datastructure after …
Run Code Online (Sandbox Code Playgroud)

python json serializable

30
推荐指数
3
解决办法
5万
查看次数

标签 统计

json ×4

python ×4

serialization ×2

javascript ×1

serializable ×1

set ×1