On Feb 11, 1:08 pm, Tim Chase <python.l...@tim.thechases.com> wrote: > Alexzive wrote: > > I am just wondering if there is a quick way to improve this algorithm > > [N is a structured array which hold info about the nodes n of a finite > > element mesh, and n is about 300.000). I need to extract info from N > > and put it in to a 3*n matrix NN which I reshape then with numpy. I > > think to "append" is quite unefficient: > > > *********************************************************** > > N = odb.rootAssembly.instances['PART-1-1'].nodes > > > NN=[] > > > B=[0,0,0] > > #auxsiliar vector > > for i in range(len(N)): > > B[0] = N[i].label > > B[1] = N[i].coordinates[0] > > B[2] = N[i].coordinates[1] > > NN = append(NN,B) > > Usually this would be written with a list-comprehension, > something like > > nn = [(x.label, x.coordinates[0], x.coordinates[1]) > for x in N] > > or if you really need lists-of-lists instead of lists-of-tuples: > > nn = [[x.label, x.coordinates[0], x.coordinates[1]] > for x in N] > > -tkc
yeah, much better thanks! Alex -- http://mail.python.org/mailman/listinfo/python-list