Я пытаюсь добавить атрибут ко всем дочерним элементам во все файлы XML в текущем каталоге. Этот атрибут должен быть равен длине каждой строки. Например, XML выглядит следующим образом:Добавление атрибута дочерним элементам
<?xml version="1.0" encoding="utf-8?>
<RootElement>
<String Id="PythonLove">I love Python.</String>
</RootElement>
Так что, если это работает так, как надо было бы оставить ребенка открывающий тег вида:
<String Id="PythonLove" length="14">
Я прочитал много форумы и все указывает на .set или .attrib, чтобы добавлять атрибуты в существующий XML. Однако ни одно из них не влияет на файлы. Мой скрипт в настоящее время выглядит так:
for child in root:
length_limit = len(child.text)
child.set('length', length_limit)
Я также пробовал child.attrib['length'] = length_limit
. Это также не работает. Что я делаю не так?
Thanks
спасибо falsetru. хорошо, так что сейчас очень близко. Он корректно печатает в командной строке атрибут length. Однако он все равно не добавляет атрибут к самому XML. – coolhand2020
@ coolhand2020, Вы имеете в виду ' Xml version =" 1.0 "encoding =" utf-8 "?>'? Затем посмотрите следующее: http://pastebin.com/s78aYw06 и сообщите мне, хотите ли вы этого. Спасибо за ваш отзыв. – falsetru