New submission from John Hagen :
The example for StringIO currently manually closes the object rather than using a context manager. Since this is likely the first code that a new user encounters and context managers reduce error-prone situations, I think it would be helpful to show usage as a context manager.
https://docs.python.org/3/library/io.html#io.StringIO.getvalue
Something like:
import io
with io.StringIO() as output:
output.write('First line.\n')
print('Second line.', file=output)
# Retrieve file contents -- this will be
# 'First line.\nSecond line.\n'
contents = output.getvalue()
# Context manager will automatically close
# object and discard memory buffer --
# .getvalue() will now raise an exception.
----------
assignee: docs@python
components: Documentation
messages: 391000
nosy: John Hagen, docs@python
priority: normal
severity: normal
status: open
title: Use context manager in StringIO example
type: enhancement
versions: Python 3.10
_______________________________________
Python tracker
https://bugs.python.org/issue43834
_______________________________________