Я написал простую функцию, которая сериализует словари в xml (до 30 строк).
Использование:
mydict = {
'name': 'The Andersson\'s',
'size': 4,
'children': {
'total-age': 62,
'child': [
{
'name': 'Tom',
'sex': 'male',
},
{
'name': 'Betty',
'sex': 'female',
}
]
},
}
print(dict2xml(mydict, 'family'))
Результат:
Полный источник (включая пример) можно найти на странице https://gist.github.com/reimund/5435343/
Примечание. Эта функция будет сериализовать словарные записи как атрибуты а не текстовые узлы. Модифицировать его для поддержки текста было бы очень легко.
userPosition.uid
, вероятно, не работает. Вам также не хватает закрывающей скобки.
Вот минимальный пример, который показывает, что концепция работает. Если у вас работает userPosition.uid
, то ваш пример хорош. Проверьте, что вы можете вывести только userPosition.uid
.
a = {}
b = {c: 3}
a[b.c] = 5
a // now equal to {3: 5}
animatedObjects = {
userPosition.uid: { // pos 1
"uid": userPosition.uid, // pos2
"x": 30,
"y": 31
}
}
Это не может работать. Во-первых, в позиции 1 вы, вероятно, имеете в виду
animatedObjects = {
userPosition:{
uid :
}
}
иначе вы создаете animatedObjects['userPosition.uid']
вместо animatedObjects.userPosition.uid
.
Во-вторых, в позиции 2 вы пытаетесь инициализировать переменную объектом, который только что создали. Это не может сработать, так как нет ссылки для передачи. (В обычном объекте нет контекста this
, вы можете передавать их по ссылке только при создании, но не во время создания).