"Susana Iraiis Delgado Rodriguez" <susana.delgad...@utzmg.edu.mx> wrote

I already changed the code, I added the try statement and the script runned
without ponting to an error.

So to be clear. You run the script and it does NOT print
'El archivo ' +filepath+ ' esta vacio'

But your file could still be empty since

       if os.path.lexists(d):
           filepath1 = "C:\\Python26\\dbf\\"
           a = open (filepath1 +b,"w+")
           try:
               Dbf(d,new=False, readOnly=True)
               for fldName in dbf.fieldDefs:

Have you tried printing dbf.fieldDefs?
If that is empty then the following code will not run.
try/except is not a magic cure-all. It needs something
to trigger the exception, if you try to itertate over an
empty list that won't do it.

                   a.write(fldName.name)
                   a.write(" || ")
                   a.write(fldName.typeCode)
                   a.write("\n")
               dbf.close()
               a.close()
               print n
           except:
               print 'El archivo ' +filepath+ ' esta vacio'

You should probably change the except to catch specific
errors rather than be a catch-all, but I'm not sure which
errors you might catch. That depends on the Dbf class design.

       else:
           print "El archivo " +n[0]+".shp" " no tiene dbf"
print "Listo"

HTH,


--
Alan Gauld
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