gpt4 book ai didi

Python 内联 XML 或 ASCII 字符串/模板?

转载 作者:太空宇宙 更新时间:2023-11-04 11:03:17 25 4
gpt4 key购买 nike

我正在通过需要一堆条件语句的 Python 脚本生成复杂的 XML 文件(示例 http://repository.azgs.az.gov/uri_gin/azgs/dlio/536/iso19139.xml)。我正在使用多个 XML 或 ASCII 元数据标准,这些标准通常架构不佳或非常模糊。

在 PHP 中,我只是写出 XML 并在需要的地方插入 PHP 片段。有没有一种简单的方法可以在 Python 中做到这一点?我试图避免转义所有 XML。内联方法对于调整模板也非常有帮助,无需太多重写。

我研究了一些 Python 模板解决方案,但它们要么过于静态,要么过于矫枉过正。在更改 XML 或 ASCII 模板时,将整个 XML 移动到 XML 对象是一项以灵 active 为代价的大量工作。

感谢新手支持!

最佳答案

格伦贝格

我像这样使用 Python 的内置 string.Template 类:

from string import Template
the_template = Template("<div id='$section_id'>First name: $first</div>")
print the_template.substitute(section_id="anID", first="Sarah")

上面的输出是:

<div id='anID'>First name: Sarah</div>

在上面的示例中,我展示了一个 XML 模板,但是您可以描述为字符串的任何"template"都可以使用。

要执行条件语句,您可以执行以下操作:

print the_template.substitute(section_id="theID", first="Sarah" if 0==0 else "John")

如果您的条件很复杂,请考虑将它们分解为闭包/函数,而不是像上面那样内联表达它们。

关于Python 内联 XML 或 ASCII 字符串/模板?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3454437/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com