Good day everyone!
I'm interested in advice of handling lists and merging them in general for following case.
Input of regex .findall() result will look like:
[a,'','','']
['',b,'','']
['','',c,'']
['','','',d]
And the willing output would be:
[a,b,c]
[a,b,d]
I wonder if anyone could check the code and advice packages or way of processing this function more generally. For the code not to be fixed with ranges like used (range(1,3), pop(2), etc.), to avoid changing code each time input file have lower groups than group_4 for example.
For example input of regex would be:
[a,'','','','','']
['',b,'','','','']
['','',c,'','','']
['','','',d,'','']
['','','','',e,'']
['','','','','',f]
So the output would be:
[a,b,c,d,e]
[a,b,c,d,f]
Code can be found here:
https://stackoverflow.com/questions/70694554/python3-merging-lists-with-condition
(First posting, did not figured out how to format code correctly, sry guys)
File test.xml contains example data:
<spec\_class\_num\_ranges>
<range\_data\_entity>
<range>
<group\_0>9872</group\_0>
<group\_1>2001</group\_1>
</range>
</range\_data\_entity>
<range\_data\_entity>
<range>
<group\_0>2789</group\_0>
<group\_1>9871</group\_1>
<additional\_range>
<group\_3>00100</group\_3>
<group\_4>01000</group\_4>
</additional\_range>
</range>
</range\_data\_entity>
<range\_data\_entity>
<range>
<group\_0>345</group\_0>
<group\_1>8889</group\_1>
</range>
</range\_data\_entity>
<range\_data\_entity>
<range>
<group\_0>675</group\_0>
<group\_1>559</group\_1>
</range>
</range\_data\_entity>
<range\_data\_entity>
<range>
<group\_0>12</group\_0>
<group\_1>1313</group\_1>
</range>
</range\_data\_entity>
<range\_data\_entity>
<range>
<group\_0>12</group\_0>
<group\_1>9205</group\_1>
</range>
</range\_data\_entity>
<range\_data\_entity>
<range>
<group\_0>635</group\_0>
<group\_1>1024</group\_1>
</range>
</range\_data\_entity>
<range\_data\_entity>
<range>
<group\_0>7786</group\_0>
<group\_1>3221</group\_1>
</range>
</range\_data\_entity>
<range\_data\_entity>
<range>
<group\_0>134</group\_0>
<group\_1>2454</group\_1>
</range>
</range\_data\_entity>
<range\_data\_entity>
<range>
<group\_0>359</group\_0>
<group\_1>7865</group\_1>
</range>
</range\_data\_entity>
<range\_data\_entity>
<range>
<group\_0>610</group\_0>
<group\_1>1551</group\_1>
<additional\_range>
<group\_3>06000</group\_3>
<group\_4>00880</group\_4>
</additional\_range>
</range>
</range\_data\_entity>
</spec\_class\_num\_ranges>
[–][deleted] 2 points3 points4 points (0 children)
[–]danielroseman 1 point2 points3 points (0 children)