8
JSON เป็นอนุกรมที่ตั้งได้อย่างไร?
ฉันมีงูหลามsetที่มีวัตถุด้วย__hash__และ__eq__วิธีการเพื่อให้แน่ใจว่าไม่มีการซ้ำซ้อนจะรวมอยู่ในคอลเลกชัน ฉันจำเป็นต้องเข้ารหัส JSON ผลนี้setแต่ผ่านแม้ที่ว่างเปล่าsetกับวิธีการยกjson.dumpsTypeError 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 ฉันรู้ว่าฉันสามารถสร้างส่วนขยายไปยังjson.JSONEncoderระดับที่มีกำหนดเองdefaultวิธี setแต่ผมไม่แน่ใจว่าจะเริ่มต้นในการแปลงมากกว่า ฉันควรสร้างพจนานุกรมจากsetค่าภายในวิธีการเริ่มต้นแล้วส่งคืนการเข้ารหัสที่? เป็นการดีที่ฉันต้องการให้วิธีการเริ่มต้นสามารถจัดการกับประเภทข้อมูลทั้งหมดที่ตัวเข้ารหัสดั้งเดิมทำให้เกิด (ฉันใช้ Mongo เป็นแหล่งข้อมูลดังนั้นวันที่ดูเหมือนจะทำให้เกิดข้อผิดพลาดนี้ด้วย) …
149
python
json
serialization
set