la función listdir () cuando un archivo fuera de secuencia

os.listdir () Descripción general

Lista el nombre del archivo o archivos os.listdir () devuelve el método de la carpeta especificada contiene la carpeta.
Por ejemplo:

  dir ='F:/Home_01/img'#当前目录   
   filenames=os.listdir(dir)#filenames存储dir下的所有文件名。  

Nota: os.listdir () Devuelve el nombre del archivo no es necesariamente el orden, ese resultado no es fijo, como se muestra a continuación,

   >>> filenames
['1.pdf', '10.pdf', '2.pdf']

1, 10, el orden de los nombres de archivo de

La solución: función de uso sort ()

= La os.listdir de los nombres de archivo (dir)
filenames.sort (lambda = X Clave: int (X [: -. 4])) '' # es el número de revés cuarta frontera, debido a que la página contiene algunas letras .PDF , lo que vendría después. '' número de la izquierda de pequeño a grande

>>> filenames.sort(key=lambda x:int(x[:-4]))
>>> filenames
['1.pdf', '2.pdf', '10.pdf']

En este momento, la secuencia codificada se convierte en: los nombres de archivo = [ '1.pdf', '2.pdf', '10 .pdf '], int supuesto ser determinado según las características de sus nombres de archivo (x [:?]) en? Valores, tipo van donde la segmentación.
Dentro de los corchetes como una función de la tecla correspondiente.

Utilice la función de clasificación

La forma básica

sorted(iterable[, cmp[, key[, reverse]]])
iterable.sort(cmp[, key[, reverse]]) 

: De parámetros
(. 1) Especifica la lista en Iterable Iterable ordenadas o, ni que decir;
(2) en función de la CMP, una función de comparar especificada especie, lambda puede especificar la función o funciones, tales como:
Estudiantes lista de objetos de la clase. , no es miembro de los tres dominios, puede establecer su propia función cmp en comparación con ordenadas, por ejemplo, quiere venir aquí para ordenar los datos por comparación del tercer miembro, el código se puede escribir:

students = [('john', 'A', 15), ('jane', 'B', 12), ('dave', 'B', 10)]
sorted(students, key=lambda student : student[2])

llave (3) es una función, que tiene una serie de elementos clasificación especificado que ser resuelto, la función se describirá usando el ejemplo anterior, como sigue:

sorted(students, key=lambda student : student[2])      

Tecla de función se asigna a un estudiante de tercer dominio elemento lambda (es decir .: estudiante [2]), y por lo tanto cuando el orden de clasificación, serán todos los estudiantes de tercer elementos de campo para ordenar.

Publicado 12 artículos originales · ganado elogios 0 · Vistas 214

Supongo que te gusta

Origin blog.csdn.net/Alden_Wei/article/details/104548146
Recomendado
Clasificación