在Python 2.7中将.po文件转换为json

时间:2015-11-24 15:42:48

标签: python json django localization django-rest-framework

简单的问题:我有一个带django-rest-framework的django应用程序,我想创建一个端点,将本地化文件作为json结果返回。这是我的API端点:

def retrieve(self, request, pk=None):
    lang = pk
    pofile = settings.LOCALE_PATHS[0] + '/' + lang + '/' + 'LC_MESSAGES' + '/' + 'django.po'
    print pofile

pofile变量具有到应用程序中实际.po文件的正确路径,现在我需要读取该文件并将其转换为json。我该怎么做?

2 个答案:

答案 0 :(得分:2)

要将PO文件转换为JSON,您可以使用pojson library

答案 1 :(得分:0)

这适用于python 2.7和3.x

import pojson,polib 
po_file_path = polib.pofile(<po_filename>)
po_dict = pojson.po2dict(po_file_path)
print(po_dict)