On 12/09/11 15:49, Susana Iraiis Delgado Rodriguez wrote:
Hi!
I developed a python gui module to make a walk through a directory. This
time I want the user to select the parameters I need from the python
gui. The results will be written in a csv file, the problem I found is
the pathfile shows this way:
C:/\Archivos de programa\FWTools2.4.7\bin\mapnik-0.7.1\demo\data

What exactly do you feel is wrong with that?
Is it the fact that the first slash after the colon is forward facing?
Or is there something else?

I'm workin with Python 2.6.6 and Windows XP, the code is:

Could you please use a few more spaces. Both to indent the code (2 spaces ids really the minimum and 3 or 4 is normal. But one is useless) and to separate the functions vertically. (ie a blank line before the def statements)

It is really very hard work wading through this stuff! I don't know how you can read it but I'm struggling to see the structure.


from Tkinter import * #Llamo las librerias graficas de Tk
import tkSimpleDialog #Libreria de almacenamiento de dialogos
import tkMessageBox #Libreria de mensajes
import tkFileDialog
import sys, os, csv, time, socket, stat
from osgeo import ogr,gdal,osr
from osgeo.gdalconst import *
from PIL import Image
dir = ""
extn = ""
csv_name = ""

def directorio():
  global dir
  print 'Seleccione directorio donde empezar'
  dirname =
tkFileDialog.askdirectory(parent=root,initialdir="/",title='Selecciona
la ruta a escanear')
  if len(dirname ) > 0:
   print "You chose %s" % dirname
  dir = dirname

def extension():
  global extn
  print "Escribe la extension que necesitas buscar"
  ext=tkSimpleDialog.askstring('Extension a buscar:','')
  print 'Buscando archivos: ',ext
  extn = ext

def csv_w():
  global csv_name
  print "Nombre del csv a crear"
  inv=tkSimpleDialog.askstring('Nombre de .csv:','')
  print 'Archivo de salidad: ',inv
  csv_name = inv

def boton4():
  print 'Iniciando...'
  gdal.AllRegister()
  file_list = []
  folders = None
  for root, folders, files in os.walk(dir):
   file_list.extend(os.path.join(root,fi) for fi in files if
fi.endswith(extn))
  f = open(csv_name, 'wb')
  log = open ('log_errores.txt','w')
  writer = csv.writer(f)
  ruta = 'Ruta'
  archivo = 'archivo'
  x_min = 'x_min'
  x_max = 'x_max'
  y_min = 'y_min'
  y_max = 'y_max'
  geometria = 'geometria'
  num_elem = 'num_elem'
  prj = '.prj'
  proyeccion = 'proyeccion'
  fecha = 'fecha_modificacion'
  creacion = 'fecha_creacion'
  ultimo = 'ultimo_acceso'
  tamanio = 'tamanio_aprox'
  maq = 'maquina_host'
  usu = 'usuario'
  campos =
[ruta,archivo,x_min,x_max,y_min,y_max,geometria,num_elem,prj,proyeccion,creacion,fecha,ultimo,tamanio,maq,usu]
  writer.writerow(campos)
  for row, filepath in enumerate(file_list, start=1):
   directorio = os.path.dirname(filepath)
   filename = os.path.basename(filepath)
   shapeData = ogr.Open(filepath)
   shp = 'Error al abrir el archivo' +filepath
   if shapeData is None:
    print shp
    log.write(shp+"\n")



I don't want to get filepath order

I don't understand what that means?

--
Alan G
Author of the Learn to Program web site
http://www.alan-g.me.uk/

_______________________________________________
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor

Reply via email to