On Jan 2, 3:18 pm, "Octavian Rasnita" <orasn...@gmail.com> wrote: > Hi, > > If I want to create a dictionary from a list, is there a better way than the > long line below? > > l = [1, 2, 3, 4, 5, 6, 7, 'a', 8, 'b'] > > d = dict(zip([l[x] for x in range(len(l)) if x %2 == 0], [l[x] for x in > range(len(l)) if x %2 == 1])) > > print(d) > > {8: 'b', 1: 2, 3: 4, 5: 6, 7: 'a'} > > Thanks. > > Octavian
this is efficient l = [1,2,3,4,5,6] >>> dict(izip(islice(l,0,len(l),2),islice(l,1,len(l),2))) {1: 2, 3: 4, 5: 6} -- http://mail.python.org/mailman/listinfo/python-list