On 07/19/12 19:32, Miriam Gomez Rios wrote: >>>> s = "('per1','persona1.1','pro1'),('per1','persona1.1','pro2')" >> resulting_tuple_of_tuples = ast.literal_eval(s) > > Traceback (most recent call last): > File "C:\Users\Miriam\scripts\prueba_datos", line 124, in <module> > print resulting_tuple.select('perf1','*','*') > AttributeError: 'tuple' object has no attribute 'select'
[copying the list, trimming your reply and changing to inline quoting for easier reading] I'm not sure why you expect there to be a .select method on the resulting object. Neither a list-of-tuples or a tuple-of-tuples has a .select method. It *sounds* like what you want to do is then to do something like d = ast.literal_eval(s) # data as a tuple-of-tuples filtered = [t for t in d where t[0] == "perf1"] or you can do filtered = [(v1,v2,v3) for (v1,v2,v3) in d where v1=="perf1"] which allows you to assign more meaningful names to the bits, as well as rearrange/select the contents: filtered = [(v3,v2) for (v1,v2,v3) in d where v1=="perf1"] or you can even do further work like instantiating objects: filtered = [MyCls(v3,v2) for (v1,v2,v3) in d where v1=="perf1"] Espero q' eso le ayuda a usted. -tkc -- http://mail.python.org/mailman/listinfo/python-list