Python: Parse string of bracketed list items into list of strings
A Regex based solution
&gt;&gt;&gt; my_string_one
'[A][B][C]'
&gt;&gt;&gt; re.split(r&quot;\[([A-Z])\]&quot;, my_string_one)[1:-1:2]
['A', 'B', 'C']
&gt;&gt;&gt; my_string_two
'[A][B][C][D][E]'
&gt;&gt;&gt; re.split(r&quot;\[([A-Z])\]&quot;, my_string_two)[1:-1:2]
['A', 'B', 'C', 'D', 'E']

You can use re.split with the expression \[([A-Z])\ having a capture group for the uppercase letters. This is under the assumption that your strings always follow this pattern otherwise you may not get what you expect.