Element () принимает не более 3 позиционных аргументов (10 дано) - PullRequest
0 голосов
/ 12 сентября 2018

AM довольно плохо знаком с генерацией XML с использованием Python. пожалуйста, руководство для решения проблемы.

Я пытаюсь создать XML-файл, как показано ниже: usng lxml и python.

<StacksCollection>
<Stack ID="1" Name="flt_stack1" Size="1000000" Mode="E_CIRCULAR" OffBoardNotification="false" Counted="true" OffBoardNotifNoCtx="false" src="Editor" />
<Stack ID="2" Name="flt_stack2" Size="1000000" Mode="E_CIRCULAR" OffBoardNotification="false" Counted="true" OffBoardNotifNoCtx="false" src="Editor" />
<Stack ID="3" Name="flt_stack3" Size="1000000" Mode="E_CIRCULAR" OffBoardNotification="false" Counted="true" OffBoardNotifNoCtx="false" src="Editor" />
<Stack ID="4" Name="flt_stack4" Size="1000000" Mode="E_CIRCULAR" OffBoardNotification="false" Counted="true" OffBoardNotifNoCtx="false" src="Editor" />
</StacksCollection>

и мой код как показано ниже

StacksCollection= ET.Element(Global_var_xmlWrite.Find_StackCollection)
for i in range(Global_var_xmlWrite.No_of_ID):
    StacksCollection.append(ET.SubElement(StacksCollection,Global_var_xmlWrite.Stack,Global_var_xmlWrite.ID[i],Global_var_xmlWrite.Name[i],Global_var_xmlWrite.Size[i],Global_var_xmlWrite.Mode[i],Global_var_xmlWrite.OffBoardNotification[i],Global_var_xmlWrite.Counted[i],Global_var_xmlWrite.OffBoardNotifNoCtx[i],Global_var_xmlWrite.src[i]))

templateXml.write(tostring((StacksCollection),pretty_print=True, xml_declaration=False, encoding='UTF-8').decode('utf-8'))

получаю ошибку, как показано ниже

TypeError: SubElement() takes at most 4 positional arguments (10 given)

но я не могу уменьшить аргумент, как я могу преодолеть эту ошибку?

...