求问大佬们代码没报错但是运行没结果
需要用python代码改一个xml文件里的数值,代码没报错,但是运行后rhop0 value的属性还是没改。{:5_100:} {:5_100:} 谢谢各位大佬,非常感谢{:5_100:}
from xml.etree import ElementTree as ET
f = open(r'C:\Users\QQLiao\Desktop\ruanzhu.xml\casedef.xml')
xml_text = f.read()
root = ET.fromstring(xml_text)
f.close()
rhop0 = root.find('casedef').find('constantsdef').find('rhop0 value')
root.attrib
rhop0 =root.set('rhop0 value','1200')
root.attrib
tree = ET.ElementTree(root)
tree.write("new.xml",encoding= 'utf-8')# -*- coding: utf-8 -*-
下面xml文件部分内容
<?xml version="1.0" encoding="UTF-8" ?>
<case>
<casedef>
<constantsdef>
<lattice bound="1" fluid="1" />
<gravity x="0" y="0" z="-9.81" comment="Gravitational acceleration" units_comment="m/s^2" />
<rhop0 value="1000" comment="Reference density of the fluid" units_comment="kg/m^3" />
本帖最后由 isdkz 于 2023-3-2 16:28 编辑
from xml.etree import ElementTree as ET
f = open(r'C:\Users\QQLiao\Desktop\ruanzhu.xml\casedef.xml')
xml_text = f.read()
root = ET.fromstring(xml_text)
f.close()
rhop0 = root.find('casedef').find('constantsdef').find('rhop0') # 改了这里
root.attrib
rhop0.set('value','1200') # 改了这里
root.attrib
tree = ET.ElementTree(root)
tree.write("new.xml",encoding= 'utf-8')
数据还是没有改{:5_100:}谢谢您!十分感谢 123lqqq 发表于 2023-3-2 16:26
数据还是没有改谢谢您!十分感谢
我这里是改了的,我调试的时候改了路径,你没有改回来吗? 123lqqq 发表于 2023-3-2 16:26
数据还是没有改谢谢您!十分感谢
你是要改这个值吧,我调试了是修改成功了,我把路径给你改回来了,你再试试 我改了路径了,我也不知为什么数据没改,我换一个文件试试 123lqqq 发表于 2023-3-2 16:37
我改了路径了,我也不知为什么数据没改,我换一个文件试试
那你 print 一下 rhop0 看看有没有找到这个元素 好滴!!! Element 'rhop0' at 0x0000014C99BA79F0
这个应该是能找到的吧,但是我文件里的值依然没有改{:5_100:} 本帖最后由 isdkz 于 2023-3-2 19:25 编辑
123lqqq 发表于 2023-3-2 17:10
Element 'rhop0' at 0x0000014C99BA79F0
这个应该是能找到的吧,但是我文件里的值依然没有改
这样就是找到了,会不会是因为你看错文件了?他修改后输出的文件是 new.xml ,而不是原来的 casedef.xml
还有下次回消息要在我的消息那里点回复,不要直接在你的帖子下面发,不然我都不知道你给我回了 isdkz 发表于 2023-3-2 19:23
这样就是找到了,会不会是因为你看错文件了?他修改后输出的文件是 new.xml ,而不是原来的 casedef.xm ...
好的啊哈哈哈哈哈,我今天才看到新消息,谢谢大佬!!!!
页:
[1]