別のプログラムの入力として、構造化データ(ほとんどの場合、いくつかの追加のメタデータを含む表形式)をファイルにダンプしたいと思います。ただし、一部のデータフィールドは任意のUnicodeデータにすることができます。PyYamlがフェイルセーフソリューション(たとえば、すべての問題のケースを回避する)であるかどうか、または他のどの単純なファイルベースのソリューションを提案するかを知っていますか?特殊文字がフォーマットまたはパーサーを壊してしまうのではないかと心配しています。
1 に答える
1
優れたシリアライザーは、Unicodeポイント参照に変換することにより、任意のUnicodeを処理します。
YAMLの場合:
>>> yaml.dump({'foo': u'τί ἐστίν; 統一碼!!! ✢✪✺'})
'{foo: "\\u03C4\\u1F77 \\u1F10\\u03C3\\u03C4\\u1F77\\u03BD; \\u7D71\\u4E00\\u78BC!!! \\u2722\\u272A\\\n \\u273A"}\n'
JSONの場合:
>>> json.dumps({'foo': u'τί ἐστίν; 統一碼!!! ✢✪✺'})
'{"foo": "\\u03c4\\u1f77 \\u1f10\\u03c3\\u03c4\\u1f77\\u03bd; \\u7d71\\u4e00\\u78bc!!! \\u2722\\u272a\\u273a"}'
于 2012-06-27T12:33:01.543 に答える