mirror of
https://github.com/python/cpython.git
synced 2025-09-26 10:19:53 +00:00
Merged revisions 85497 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k ........ r85497 | antoine.pitrou | 2010-10-14 23:15:17 +0200 (jeu., 14 oct. 2010) | 3 lines Explicitly close some files (from issue #10093) ........
This commit is contained in:
parent
b67660fcce
commit
f7c24450be
5 changed files with 25 additions and 14 deletions
|
@ -343,7 +343,8 @@ def test():
|
||||||
if o == '-u': func = decode
|
if o == '-u': func = decode
|
||||||
if o == '-t': test1(); return
|
if o == '-t': test1(); return
|
||||||
if args and args[0] != '-':
|
if args and args[0] != '-':
|
||||||
func(open(args[0], 'rb'), sys.stdout)
|
with open(args[0], 'rb') as f:
|
||||||
|
func(f, sys.stdout)
|
||||||
else:
|
else:
|
||||||
func(sys.stdin, sys.stdout)
|
func(sys.stdin, sys.stdout)
|
||||||
|
|
||||||
|
|
|
@ -199,9 +199,8 @@ class MimeTypes:
|
||||||
list of standard types, else to the list of non-standard
|
list of standard types, else to the list of non-standard
|
||||||
types.
|
types.
|
||||||
"""
|
"""
|
||||||
fp = open(filename)
|
with open(filename) as fp:
|
||||||
self.readfp(fp, strict)
|
self.readfp(fp, strict)
|
||||||
fp.close()
|
|
||||||
|
|
||||||
def readfp(self, fp, strict=True):
|
def readfp(self, fp, strict=True):
|
||||||
"""
|
"""
|
||||||
|
@ -356,7 +355,7 @@ def init(files=None):
|
||||||
files = knownfiles
|
files = knownfiles
|
||||||
for file in files:
|
for file in files:
|
||||||
if os.path.isfile(file):
|
if os.path.isfile(file):
|
||||||
db.readfp(open(file))
|
db.read(file)
|
||||||
encodings_map = db.encodings_map
|
encodings_map = db.encodings_map
|
||||||
suffix_map = db.suffix_map
|
suffix_map = db.suffix_map
|
||||||
types_map = db.types_map[True]
|
types_map = db.types_map[True]
|
||||||
|
|
|
@ -289,7 +289,8 @@ def _init_posix(vars):
|
||||||
# load the installed pyconfig.h:
|
# load the installed pyconfig.h:
|
||||||
config_h = get_config_h_filename()
|
config_h = get_config_h_filename()
|
||||||
try:
|
try:
|
||||||
parse_config_h(open(config_h), vars)
|
with open(config_h) as f:
|
||||||
|
parse_config_h(f, vars)
|
||||||
except IOError, e:
|
except IOError, e:
|
||||||
msg = "invalid Python installation: unable to open %s" % config_h
|
msg = "invalid Python installation: unable to open %s" % config_h
|
||||||
if hasattr(e, "strerror"):
|
if hasattr(e, "strerror"):
|
||||||
|
|
|
@ -4171,7 +4171,8 @@ class TestEncoding(TestCase):
|
||||||
def _test_module_encoding(self, path):
|
def _test_module_encoding(self, path):
|
||||||
path, _ = os.path.splitext(path)
|
path, _ = os.path.splitext(path)
|
||||||
path += ".py"
|
path += ".py"
|
||||||
codecs.open(path, 'r', 'utf8').read()
|
with codecs.open(path, 'r', 'utf8') as f:
|
||||||
|
f.read()
|
||||||
|
|
||||||
def test_argparse_module_encoding(self):
|
def test_argparse_module_encoding(self):
|
||||||
self._test_module_encoding(argparse.__file__)
|
self._test_module_encoding(argparse.__file__)
|
||||||
|
|
|
@ -586,10 +586,13 @@ def parsefile():
|
||||||
<ns0:empty-element />
|
<ns0:empty-element />
|
||||||
</ns0:root>
|
</ns0:root>
|
||||||
|
|
||||||
|
>>> with open(SIMPLE_XMLFILE) as f:
|
||||||
|
... data = f.read()
|
||||||
|
|
||||||
>>> parser = ET.XMLParser()
|
>>> parser = ET.XMLParser()
|
||||||
>>> parser.version # doctest: +ELLIPSIS
|
>>> parser.version # doctest: +ELLIPSIS
|
||||||
'Expat ...'
|
'Expat ...'
|
||||||
>>> parser.feed(open(SIMPLE_XMLFILE).read())
|
>>> parser.feed(data)
|
||||||
>>> print serialize(parser.close())
|
>>> print serialize(parser.close())
|
||||||
<root>
|
<root>
|
||||||
<element key="value">text</element>
|
<element key="value">text</element>
|
||||||
|
@ -598,7 +601,7 @@ def parsefile():
|
||||||
</root>
|
</root>
|
||||||
|
|
||||||
>>> parser = ET.XMLTreeBuilder() # 1.2 compatibility
|
>>> parser = ET.XMLTreeBuilder() # 1.2 compatibility
|
||||||
>>> parser.feed(open(SIMPLE_XMLFILE).read())
|
>>> parser.feed(data)
|
||||||
>>> print serialize(parser.close())
|
>>> print serialize(parser.close())
|
||||||
<root>
|
<root>
|
||||||
<element key="value">text</element>
|
<element key="value">text</element>
|
||||||
|
@ -608,7 +611,7 @@ def parsefile():
|
||||||
|
|
||||||
>>> target = ET.TreeBuilder()
|
>>> target = ET.TreeBuilder()
|
||||||
>>> parser = ET.XMLParser(target=target)
|
>>> parser = ET.XMLParser(target=target)
|
||||||
>>> parser.feed(open(SIMPLE_XMLFILE).read())
|
>>> parser.feed(data)
|
||||||
>>> print serialize(parser.close())
|
>>> print serialize(parser.close())
|
||||||
<root>
|
<root>
|
||||||
<element key="value">text</element>
|
<element key="value">text</element>
|
||||||
|
@ -711,7 +714,8 @@ def iterparse():
|
||||||
end-ns None
|
end-ns None
|
||||||
|
|
||||||
>>> events = ("start", "end", "bogus")
|
>>> events = ("start", "end", "bogus")
|
||||||
>>> context = iterparse(SIMPLE_XMLFILE, events)
|
>>> with open(SIMPLE_XMLFILE, "rb") as f:
|
||||||
|
... iterparse(f, events)
|
||||||
Traceback (most recent call last):
|
Traceback (most recent call last):
|
||||||
ValueError: unknown event 'bogus'
|
ValueError: unknown event 'bogus'
|
||||||
|
|
||||||
|
@ -763,6 +767,8 @@ def custom_builder():
|
||||||
"""
|
"""
|
||||||
Test parser w. custom builder.
|
Test parser w. custom builder.
|
||||||
|
|
||||||
|
>>> with open(SIMPLE_XMLFILE) as f:
|
||||||
|
... data = f.read()
|
||||||
>>> class Builder:
|
>>> class Builder:
|
||||||
... def start(self, tag, attrib):
|
... def start(self, tag, attrib):
|
||||||
... print "start", tag
|
... print "start", tag
|
||||||
|
@ -772,7 +778,7 @@ def custom_builder():
|
||||||
... pass
|
... pass
|
||||||
>>> builder = Builder()
|
>>> builder = Builder()
|
||||||
>>> parser = ET.XMLParser(target=builder)
|
>>> parser = ET.XMLParser(target=builder)
|
||||||
>>> parser.feed(open(SIMPLE_XMLFILE, "r").read())
|
>>> parser.feed(data)
|
||||||
start root
|
start root
|
||||||
start element
|
start element
|
||||||
end element
|
end element
|
||||||
|
@ -782,6 +788,8 @@ def custom_builder():
|
||||||
end empty-element
|
end empty-element
|
||||||
end root
|
end root
|
||||||
|
|
||||||
|
>>> with open(SIMPLE_NS_XMLFILE) as f:
|
||||||
|
... data = f.read()
|
||||||
>>> class Builder:
|
>>> class Builder:
|
||||||
... def start(self, tag, attrib):
|
... def start(self, tag, attrib):
|
||||||
... print "start", tag
|
... print "start", tag
|
||||||
|
@ -795,7 +803,7 @@ def custom_builder():
|
||||||
... print "comment", repr(data)
|
... print "comment", repr(data)
|
||||||
>>> builder = Builder()
|
>>> builder = Builder()
|
||||||
>>> parser = ET.XMLParser(target=builder)
|
>>> parser = ET.XMLParser(target=builder)
|
||||||
>>> parser.feed(open(SIMPLE_NS_XMLFILE, "r").read())
|
>>> parser.feed(data)
|
||||||
pi pi 'data'
|
pi pi 'data'
|
||||||
comment ' comment '
|
comment ' comment '
|
||||||
start {namespace}root
|
start {namespace}root
|
||||||
|
@ -813,7 +821,8 @@ def getchildren():
|
||||||
"""
|
"""
|
||||||
Test Element.getchildren()
|
Test Element.getchildren()
|
||||||
|
|
||||||
>>> tree = ET.parse(open(SIMPLE_XMLFILE, "r"))
|
>>> with open(SIMPLE_XMLFILE, "r") as f:
|
||||||
|
... tree = ET.parse(f)
|
||||||
>>> for elem in tree.getroot().iter():
|
>>> for elem in tree.getroot().iter():
|
||||||
... summarize_list(elem.getchildren())
|
... summarize_list(elem.getchildren())
|
||||||
['element', 'element', 'empty-element']
|
['element', 'element', 'empty-element']
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue