diff --git a/Lib/urllib.py b/Lib/urllib.py
index db8e616..1c31d48 100644
--- a/Lib/urllib.py
+++ b/Lib/urllib.py
@@ -231,7 +231,7 @@
             try:
                 fp = self.open_local_file(url1)
                 hdrs = fp.info()
-                del fp
+                fp.close()
                 return url2pathname(splithost(url1)[1]), hdrs
             except IOError, msg:
                 pass
@@ -275,8 +275,6 @@
                 tfp.close()
         finally:
             fp.close()
-        del fp
-        del tfp
 
         # raise exception if actual size does not match content-length header
         if size >= 0 and read < size:
@@ -1570,9 +1568,8 @@
                 print '======'
                 for k in h.keys(): print k + ':', h[k]
                 print '======'
-            fp = open(fn, 'rb')
-            data = fp.read()
-            del fp
+            with open(fn, 'rb') as fp:
+                data = fp.read()
             if '\r' in data:
                 table = string.maketrans("", "")
                 data = data.translate(table, "\r")
