Tuesday 15 June 2010

python - TO read all files in a folder in an order -



python - TO read all files in a folder in an order -

i'm beginner.i want read files in folder.for eg.files name 1.csv,2.csv........10.csv,11.csv.....20.csv likewise.it sholud read 1.csv,2.csv ......but me reading 1.csv,10.csv,11.csv.......19.csv,2.csv

i'm using code :

import glob path = 'c://test//08october2014//data_intv_new//october082014//*.sec.gz' files=glob.glob(path) list in sorted(files): print list

output:

c://test//08october2014//data_intv_new//october082014\1.sec.gz c://test//08october2014//data_intv_new//october082014\10.sec.gz c://test//08october2014//data_intv_new//october082014\11.sec.gz c://test//08october2014//data_intv_new//october082014\12.sec.gz c://test//08october2014//data_intv_new//october082014\13.sec.gz c://test//08october2014//data_intv_new//october082014\14.sec.gz c://test//08october2014//data_intv_new//october082014\15.sec.gz c://test//08october2014//data_intv_new//october082014\16.sec.gz c://test//08october2014//data_intv_new//october082014\17.sec.gz c://test//08october2014//data_intv_new//october082014\18.sec.gz c://test//08october2014//data_intv_new//october082014\19.sec.gz c://test//08october2014//data_intv_new//october082014\2.sec.gz c://test//08october2014//data_intv_new//october082014\20.sec.gz c://test//08october2014//data_intv_new//october082014\21.sec.gz c://test//08october2014//data_intv_new//october082014\22.sec.gz c://test//08october2014//data_intv_new//october082014\23.sec.gz c://test//08october2014//data_intv_new//october082014\24.sec.gz c://test//08october2014//data_intv_new//october082014\25.sec.gz c://test//08october2014//data_intv_new//october082014\26.sec.gz c://test//08october2014//data_intv_new//october082014\27.sec.gz c://test//08october2014//data_intv_new//october082014\28.sec.gz c://test//08october2014//data_intv_new//october082014\29.sec.gz c://test//08october2014//data_intv_new//october082014\3.sec.gz c://test//08october2014//data_intv_new//october082014\30.sec.gz

in string comparisons, "0" < "1" < "10" < "2" < "20" (lexicographical order). you'd have name files "01", "02", ..., "09", "10", ... them sort without effort.

if can't that, you're looking called "natural sorting". there's module here: https://pypi.python.org/pypi/natsort

python

No comments:

Post a Comment