Мне нужно прочитать и сериализовать объекты из и в формате XML в формате .plist от Apple. Каков самый умный способ сделать это на Python? Есть ли готовые решения?Сериализация объекта Python для XML (Apple .plist)
3
A
ответ
7
Отъезд plistlib.
2
Предполагая, что вы находитесь на Mac, вы можете использовать PyObjC.
Вот пример чтения из списка свойств, от Using Python For System Administration, слайд 27.
from Cocoa import NSDictionary
myfile = "/Library/Preferences/com.apple.SoftwareUpdate.plist"
mydict = NSDictionary.dictionaryWithContentsOfFile_(myfile)
print mydict["LastSuccessfulDate"]
# returns: 2009-08-11 08:38:01 -0600
И пример записи в PLIST (что я писал):
#!/usr/bin/env python
from Cocoa import NSDictionary, NSString
myfile = "~/test.plist"
myfile = NSString.stringByExpandingTildeInPath(myfile)
mydict = {"Nice Number" : 47, "Universal Sum" : 42}
mydict["Vector"] = (10, 20, 30)
mydict["Complex"] = [47, "i^2"]
mydict["Truth"] = True
NSDictionary.dictionaryWithDictionary_(mydict).writeToFile_atomically_(myfile, True)
Когда я затем запустить defaults read ~/test
в Баш, я получаю:
{
Complex = (
47,
"i^2"
);
"Nice Number" = 47;
Truth = 1;
"Universal Sum" = 42;
Vector = (
10,
20,
30
);
}
И файл выглядит очень приятно, когда открывается в Property List Editor.app.
Смежные вопросы
- 1. Сериализация объекта для XML
- 2. Сериализация объектов python для XML
- 3. Сериализация plist
- 4. Сериализация NSDictionary для файла XML
- 5. xml сериализация стороннего объекта
- 6. Настройки пользователя XML-сериализация объекта
- 7. Сериализация объекта NSXMLDocument
- 8. Сериализация xml объекта при сохранении исходного xml?
- 9. Сериализация объекта XML - добавить метод
- 10. Parse Apple plist with TSQL
- 11. Сериализация объекта suds в python
- 12. Сериализация объекта Python на/из телефона S60
- 13. Сериализация ModelStateDictionary для XML
- 14. XML-сериализация для API
- 15. Сериализация XML для объектов
- 16. Сериализация Linq.Table для XML
- 17. Сериализация словаря для XML
- 18. XML-сериализация объекта в другой формат вывода
- 19. Сериализация списка KeyValuePair для XML
- 20. как сериализация объекта исключения, как XML-строки
- 21. XML-сериализация объекта, содержащего недопустимые символы
- 22. Сериализация объекта в XML без [Xmlns = «»]
- 23. C# xml сериализация, показывающая график обратного объекта
- 24. XML Сериализация объекта, инициализированного как массив
- 25. Сериализация объекта XML-файла вызывает исключение
- 26. Список свойств apple (plist) в C++
- 27. Parsing .plist Файлы для простого XML C#
- 28. XML-сериализация в C#
- 29. Сериализация объекта
- 30. Сериализация объекта - Замена значений