elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a la Factorización De Semiprimos (RSA)


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  [Python] Listar Archivos Carpeta
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [Python] Listar Archivos Carpeta  (Leído 7,218 veces)
ovichan

Desconectado Desconectado

Mensajes: 81


Ver Perfil
[Python] Listar Archivos Carpeta
« en: 11 Agosto 2013, 22:46 pm »

Bueno... hace poco y a modo de hobby me puse a aprender este lenguaje, y aunque soy un mega noob en esto me permito postear un código para quien quiera criticarlo positiva o negativamente... asi podré seguir mejorando.

Este codigo permite listar los archivos de una carpeta que este en la misma ruta que el script, y lo guarda en un txt. He añadido y no he quitado, un parametro simple de control de ejecucion, a modo de depuracion... aunque podia haber hecho algun try... pero me gustan las ventanitas jiji

Código
  1. #-------------------------------------------------------------------------------
  2. # Name:        Overdrive
  3. # Purpose:     Listar archivos directorio en un txt
  4. #
  5. # Author:      Overdrive
  6. #
  7. # Created:     10/08/2013
  8. # Copyright:   (c) Overdrive 2013
  9. # Licence:     Free
  10. #-------------------------------------------------------------------------------
  11. #import fnmatch
  12. import os
  13. from tkinter import messagebox
  14. import tkinter
  15.  
  16. #Creamos una clase para la ventana de control depuración
  17. class Msgbox(object):
  18.  
  19.    #""" Constructor """
  20.    def __init__(self, text):
  21.        self.text=text
  22.        window = tkinter.Tk()
  23.        window.wm_withdraw()
  24.  
  25.    def msg(self):
  26.        messagebox.showinfo("Ventana de depuración", self.text)
  27.  
  28. def escribir(name):
  29.  
  30.    #Creamos el objeto del archivo de texto
  31.    fd = os.open( name, os.O_RDWR|os.O_CREAT )
  32.    mi_archivo=os.fdopen(fd,"r+")
  33.  
  34.    #Grabamos cada archivo del directorio en el txt, exceptuando el script
  35.    for file in os.listdir('.'):
  36.        if file[-2:] != 'py' and file[-3:] != 'txt':
  37.            mi_archivo.write(str(file)+"\n")
  38.  
  39.    #Cerramos el archivo creado
  40.    mi_archivo.close()
  41.  
  42. def main():
  43.    #Comprobamos si existe .txt y sino lo creamos
  44.  
  45.    if os.path.isfile(str(os.curdir)+"\lista.txt")==False:
  46.        ventana=Msgbox("No existe el fichero.")
  47.        ventana.msg()
  48.        escribir("lista.txt")
  49.    else:
  50.        ventana=Msgbox("Si existe el fichero.")
  51.        ventana.msg()
  52.        os.remove('lista.txt')
  53.        escribir("lista.txt")
  54.  
  55. main()


« Última modificación: 11 Agosto 2013, 23:16 pm por EleKtro H@cker » En línea

0x5d

Desconectado Desconectado

Mensajes: 241



Ver Perfil WWW
Re: [Python] Listar Archivos Carpeta
« Respuesta #1 en: 19 Agosto 2013, 06:39 am »

Hola, buen día.

Viendo tu código me llamó la atención que hayas usado el mismo os para escribir el archivo, no está mal, pero es poco usual. De todas formas si realizas otro código y no usas la librería os, no la importes solo para escribir o leer un archivo, solo usa open() :D

Saludos !


En línea

ovichan

Desconectado Desconectado

Mensajes: 81


Ver Perfil
Re: [Python] Listar Archivos Carpeta
« Respuesta #2 en: 20 Agosto 2013, 05:45 am »

Era por probar cosas nuevas ^^, pero imagino que sera mejor como comentas.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines