基础序列化
本页介绍 pyfory 中的基础序列化模式。
基础对象序列化
使用简单的 API 序列化和反序列化 Python 对象:
import pyfory
# 创建 Fory 实例
fory = pyfory.Fory(xlang=True)
# 序列化任何 Python 对象
data = fory.dumps({"name": "Alice", "age": 30, "scores": [95, 87, 92]})
# 反序列化回 Python 对象
obj = fory.loads(data)
print(obj) # {'name': 'Alice', 'age': 30, 'scores': [95, 87, 92]}
注意:dumps()/loads() 是 serialize()/deserialize() 的别名。两个 API 完全相同,使用任何一个都可以。
自定义类序列化
Fory 自动处理 dataclass 和自定义类型:
import pyfory
from dataclasses import dataclass
from typing import List, Dict
@dataclass
class Person:
name: str
age: int
scores: List[int]
metadata: Dict[str, str]
# Python 模式 - 支持所有 Python 类型,包括 dataclass
fory = pyfory.Fory(xlang=False, ref=True)
fory.register(Person)
person = Person("Bob", 25, [88, 92, 85], {"team": "engineering"})
data = fory.serialize(person)
result = fory.deserialize(data)
print(result) # Person(name='Bob', age=25, ...)