我试着这样做
import xml.etree.ElementTree as ET
root = ET.Element('xml')
projects = ["a", "e", "u"]
for i in projects:
project = ET.SubElement(root,'project')
project.set('name', i)
designs = ["a", "e", "u"]
for u in designs:
design = ET.SubElement(project,'design')
design.set('name', u)
vars = ["a", "e", "u"]
for z in vars:
param = ET.SubElement(design,'param')
param.set('name', z)
value = ET.SubElement(param,'value')
value.text = "var"
tree = ET.ElementTree(root)
tree.write('projects.xml')
如果我用 ipy.exe 执行它,它的工作原理完全可以,但我需要从另一个程序的脚本接口执行它。脚本接口在 .NET 2.0.50727.5466 上使用 IronPython 2.6.10920.0 它运行没有错误,但它创建的文件始终为空。如果我尝试删除所述文件,它说它仍然在程序中打开。是否有释放 xml 文件的命令或者我忽略了什么?
更新:如果我在运行脚本后关闭有问题的程序,则正常创建 xml 文件
更新:像这样的简单文件编写器可以完美运行
f = open("pythontest.txt", "w")
projects = ["a", "e", "u"]
for i in projects:
f.write("Name: " + i)
f.close()