Вы можете использовать простую рекурсивную функцию, чтобы найти значения None
и преобразовать их в 'None'
, например:
Код:
def convert_none_to_str(data):
if isinstance(data, list):
data[:] = [convert_none_to_str(i) for i in data]
elif isinstance(data, dict):
for k, v in data.items():
data[k] = convert_none_to_str(v)
return 'None' if data is None else data
Код теста:
yaml_data = """
SomeRecord:
type: array
items:
type:
- string
- number
- null
"""
import yaml
data = yaml.safe_load(yaml_data)
print(data)
convert_none_to_str(data)
print(data)
Результаты:
{'SomeRecord': {'type': 'array', 'items': {'type': ['string', 'number', None]}}}
{'SomeRecord': {'type': 'array', 'items': {'type': ['string', 'number', 'None']}}}