首页 > 解决方案 > 如何打印 Python 变量作为 XML 文件的属性值

问题描述

Python 版本 3.6.8

import xml.etree.cElementTree as ET

以下是生成 XML 文件的代码,XML 文件生成代码工作正常。我需要从变量中写一些值。变量是iheightwidth

frame = ET.SubElement(root, "frame", number="{i}")
objectlist = ET.SubElement(frame, "objectlist")
object = ET.SubElement(objectlist, "object", id="1")
ET.SubElement(object, "box", h="{height}", w="{width}")

如何传递给定代码中的变量?(第一行代码和第四行代码)

标签: pythonxml

解决方案


首先,请指定所有有价值的信息,例如Python 版本以及您使用的库是什么(ET)。

如果此代码在 Python 3.6 或更高版本中,最直观的方法是使用f-strings,在您的情况下:

frame = ET.SubElement(root, "frame", number=f"{i}"

(注意唯一的变化是f在 的值之前number

您可以对任何其他字符串值执行相同的操作。

实现此目的的另一种方法是将 的值i转换为字符串 using str(i),它的工作方式相同,但缺乏 f-strings 的效率。


推荐阅读