저는 파이썬의 xml.etree.ElementTree 라이브러리를 약간 다루었습니다. 대부분이 파일을 가지고 놀았습니다. 나는 파이썬이 파일을 메모리에로드하고 편집 한 다음 플러시하고 편집되지 않은 버전을 계속 사용하는 것으로 나타났습니다. 예를 들어, 내 프로그램에서 요소를 XML 파일에 추가 한 다음 해당 XML 파일을 반복 할 경우 이전에 만든 추가 내용을 볼 수 없습니다. 파일에 추가하기위한Python의 ElementTree에서 파일 새로 고침
:
import xml.etree.ElementTree as ET
tree = et.parse("file.xml")
root = tree.getroot()
newel = ET.Element("element", tag=foo,)
newel.text = bar
root.append(newel)
tree.write("file.xml")
for child in root:
if child.get("tag") == foo:
print(child.text)
내가 그렇게 말하자면, 뭔가 잘못하고, 또는 무엇 '상쾌'의 좋은 방법입니다 오전
여기 내 코드의 압축 된 버전입니다 프로그램의 XML 파일이므로 for 루프로 프로그램을 반복 할 때 새로운 요소를 볼 수 있습니까?
저는 파이썬 3.5를 사용하고 있습니다.
[이] (HTTP :/당신이
tag
을 원하는 가정하면 요소 속성으로는 (일부 추가 수정과) 작업을해야 다음 (당신이Element.get
으로 검색을 시도하는 방법에 따라) /stackoverflow.com/questions/27829575/python-refresh-file-from-disk), 적용되지 않는 것 같습니다. – prongs95