mirror of
https://github.com/python/cpython.git
synced 2025-10-12 01:43:12 +00:00
Issue #12760: Refer to the new 'x' open mode as "exclusive creation" mode.
This commit is contained in:
parent
138f4656e3
commit
d612de10e5
4 changed files with 13 additions and 12 deletions
|
@ -472,12 +472,12 @@ Raw File I/O
|
||||||
to which the resulting :class:`FileIO` object will give access.
|
to which the resulting :class:`FileIO` object will give access.
|
||||||
|
|
||||||
The *mode* can be ``'r'``, ``'w'``, ``'x'`` or ``'a'`` for reading
|
The *mode* can be ``'r'``, ``'w'``, ``'x'`` or ``'a'`` for reading
|
||||||
(default), writing, creating or appending. The file will be created if it
|
(default), writing, exclusive creation or appending. The file will be
|
||||||
doesn't exist when opened for writing or appending; it will be truncated
|
created if it doesn't exist when opened for writing or appending; it will be
|
||||||
when opened for writing. :exc:`FileExistsError` will be raised if it already
|
truncated when opened for writing. :exc:`FileExistsError` will be raised if
|
||||||
exists when opened for creating. Opening a file for creating implies
|
it already exists when opened for creating. Opening a file for creating
|
||||||
writing, so this mode behaves in a similar way to ``'w'``. Add a ``'+'`` to
|
implies writing, so this mode behaves in a similar way to ``'w'``. Add a
|
||||||
the mode to allow simultaneous reading and writing.
|
``'+'`` to the mode to allow simultaneous reading and writing.
|
||||||
|
|
||||||
The :meth:`read` (when called with a positive argument), :meth:`readinto`
|
The :meth:`read` (when called with a positive argument), :meth:`readinto`
|
||||||
and :meth:`write` methods on this class will only make one system call.
|
and :meth:`write` methods on this class will only make one system call.
|
||||||
|
|
|
@ -427,8 +427,9 @@ parameter to control parameters of the secure channel.
|
||||||
io
|
io
|
||||||
--
|
--
|
||||||
|
|
||||||
The :func:`~io.open` function has a new ``'x'`` mode that can be used to create
|
The :func:`~io.open` function has a new ``'x'`` mode that can be used to
|
||||||
a new file, and raise a :exc:`FileExistsError` if the file already exists.
|
exclusively create a new file, and raise a :exc:`FileExistsError` if the file
|
||||||
|
already exists. It is based on the C11 'x' mode to fopen().
|
||||||
|
|
||||||
(Contributed by David Townshend in :issue:`12760`)
|
(Contributed by David Townshend in :issue:`12760`)
|
||||||
|
|
||||||
|
|
|
@ -41,7 +41,7 @@ def open(file, mode="r", buffering=-1, encoding=None, errors=None,
|
||||||
mode is an optional string that specifies the mode in which the file is
|
mode is an optional string that specifies the mode in which the file is
|
||||||
opened. It defaults to 'r' which means open for reading in text mode. Other
|
opened. It defaults to 'r' which means open for reading in text mode. Other
|
||||||
common values are 'w' for writing (truncating the file if it already
|
common values are 'w' for writing (truncating the file if it already
|
||||||
exists), 'x' for creating and writing to a new file, and 'a' for appending
|
exists), 'x' for exclusive creation of a new file, and 'a' for appending
|
||||||
(which on some Unix systems, means that all writes append to the end of the
|
(which on some Unix systems, means that all writes append to the end of the
|
||||||
file regardless of the current seek position). In text mode, if encoding is
|
file regardless of the current seek position). In text mode, if encoding is
|
||||||
not specified the encoding used is platform dependent. (For reading and
|
not specified the encoding used is platform dependent. (For reading and
|
||||||
|
|
|
@ -1066,9 +1066,9 @@ PyDoc_STRVAR(fileio_doc,
|
||||||
"file(name: str[, mode: str][, opener: None]) -> file IO object\n"
|
"file(name: str[, mode: str][, opener: None]) -> file IO object\n"
|
||||||
"\n"
|
"\n"
|
||||||
"Open a file. The mode can be 'r', 'w', 'x' or 'a' for reading (default),\n"
|
"Open a file. The mode can be 'r', 'w', 'x' or 'a' for reading (default),\n"
|
||||||
"writing, creating or appending. The file will be created if it doesn't\n"
|
"writing, exclusive creation or appending. The file will be created if it\n"
|
||||||
"exist when opened for writing or appending; it will be truncated when\n"
|
"doesn't exist when opened for writing or appending; it will be truncated\n"
|
||||||
"opened for writing. A `FileExistsError` will be raised if it already\n"
|
"when opened for writing. A `FileExistsError` will be raised if it already\n"
|
||||||
"exists when opened for creating. Opening a file for creating implies\n"
|
"exists when opened for creating. Opening a file for creating implies\n"
|
||||||
"writing so this mode behaves in a similar way to 'w'.Add a '+' to the mode\n"
|
"writing so this mode behaves in a similar way to 'w'.Add a '+' to the mode\n"
|
||||||
"to allow simultaneous reading and writing. A custom opener can be used by\n"
|
"to allow simultaneous reading and writing. A custom opener can be used by\n"
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue