Cadena de análisis de Python que contiene funciones, listas y dictados

Estoy tratando de encontrar la manera de analizar cadenas que puedan contener variables, funciones, listas o dictados escritos en sintaxis de python separados con ",". El espacio en blanco debe poder utilizarse en cualquier lugar, así que divídalo con "," cuando no esté dentro (), [] o {}.

Cadena de ejemplo:"variable, function1(1,3), function2([1,3],2), ['list_item_1','list_item_2'],{'dict_key_1': "dict_item_1"}"

Otra cadena de ejemplo:"variable,function1(1, 3) , function2( [1,3],2), ['list_item_1','list_item_2'],{'dict_key_1': "dict_item_1"}"

Salida de ejemplo["variable", "function1(1,3)", "function2([1,3],2)", "['list_item_1','list_item_2']", "{'dict_key_1': "dict_item_1"}"]

editar: la razón del código es analizar una cadena y luego ejecutarla conexec("var = &s" % list[x]). (sí, sé que esta podría no ser una forma recomendada de hacer cosas)

Respuestas a la pregunta(3)

Su respuesta a la pregunta