Paul Rubin wrote: > "Kirt" <[EMAIL PROTECTED]> writes: > > Actually here in my code ['1', 'a', '6'], ['1', 'b', '6'], ['1', 'c', > > '6'] means: > > 1==> Directory name; > > a,b,c,d=== Filename > > 6 ==> modified time > > > > So i want the out put like: > > Directory name: 1 > > Filename:a > > modified time:6 > > Try writing the code in a style with fewer side effects. I like using > itertools.groupby for this type of thing (not exactly tested): > > from itertools import groupby > > List=[['1', 'a', '6'], ['1', 'b', '6'], ['1', 'c', '6'], > ['1', 'd', '6'],['2', 'a','6'], ['2', 'b', '6'], > ['2', 'c', '6'], ['2', 'd', '6'], ['3', 'a', '6'], > ['3','b', '6'], ['4', 'a', '6'], ['4', 'b', '6']] > > # retrieve directory name from one of those tuples > def directory_name(t): return t[0] > > for dirname,dir_contents in groupby(sorted(List), directory_name): > print 'Directory name:, dirname > for dname2,filename,modtime in dir_contents: > print 'Filename:%s\nmodified time:%s'% (filename, modtime) > > The output is: > > >>> ## working on region in file /usr/tmp/python-9013z7X... > Directory name: 1 > Filename:a > modified time:6 > Filename:b > modified time:6 > Filename:c > modified time:6 > Filename:d > modified time:6 > Directory name: 2 > Filename:a > modified time:6 > Filename:b > modified time:6 > Filename:c > modified time:6 > Filename:d > modified time:6 > Directory name: 3 > Filename:a > modified time:6 > Filename:b > modified time:6 > Directory name: 4 > Filename:a > modified time:6 > Filename:b > modified time:6 > >>> > > Is that what you wanted?
Thanx Paul. Thats exactly what i wanted. ur piece of code has reduced my overall code by half. thanx again. -- http://mail.python.org/mailman/listinfo/python-list