[英]Create an XML using etree
我正在尝试创建这个:
<View>
<Text name="text" value="$text" />
<View style="box-shadow: 2px 2px 5px #999;padding: 20px; margin-top: 2em;border-radius: 5px;display: flex; justify-content: space-between; background: #f5dcdc;">
<Choices toName="text" name="label1">
<Header value="label1"/>
<Choice value="modality1"/>
<Choice value="modality2"/>
<Choice value="modality3"/>
</Choices>
<Choices toName="text" name="label2">
<Header value="label2"/>
<Choice value="modality1"/>
<Choice value="modality2"/>
<Choice value="modality3"/>
</Choices>
</View>
</View>
但是,当我使用以下命令开始我的代码时:
root = etree.Element("View")
textelem = etree.SubElement(root, "Text")
###
stylelem = etree.SubElement(root, "style")
styledict = {"View":"box-shadow: 2px 2px 5px #999;padding: 20px; margin-top: 2em;border-radius: 5px;display: flex; justify-content: center; background: #f5dcdc;"}
for key, val in styledict.items():
stylelem.set(key, val)
###
dictattrib = {
"name": "text",
"value": "$text"
}
for key, val in dictattrib.items():
textelem.set(key, val)
我明白了:
<View>
<Text name="text" value="$text"/>
<View style="box-shadow: 2px 2px 5px #999;padding: 20px; margin-top: 2em;border-radius: 5px;display: flex; justify-content: center; background: #f5dcdc;"/>
<Header value="label1"/>
<Choices toName="text" name="label1">
<Choice value="modality1"/>
<Choice value="modality2"/>
<Choice value="modality3"/>
</Choices>
<Header value="label2"/>
<Choices toName="text" name="label2">
<Choice value="modality1"/>
<Choice value="modality2"/>
</Choices>
</View>
任何人都知道如何更改以获取非结束标签并最终获得结束标签?
它应该在这里产生结果: https ://labelstud.io/playground/
简单的答案是将选项附加到视图而不是根。 这将在 View 中创建一个选择的子树,它会在您调用它时打开和关闭。 不要使用字符串修改 xml,它有选项。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.