Thanks to visit codestin.com
Credit goes to github.com

Skip to content
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
shlex: Update documentation to mention shlex.quote's force kwarg
  • Loading branch information
jb2170 committed Jun 3, 2026
commit ca02f2b0ce9d626ecc0cb9ff10849cce7a860591
20 changes: 19 additions & 1 deletion Doc/library/shlex.rst
Original file line number Diff line number Diff line change
Expand Up @@ -44,12 +44,15 @@ The :mod:`!shlex` module defines the following functions:
.. versionadded:: 3.8


.. function:: quote(s)
.. function:: quote(s, *, force=False)

Return a shell-escaped version of the string *s*. The returned value is a
string that can safely be used as one token in a shell command line, for
cases where you cannot use a list.

If *force* is :const:`True` then *s* will be quoted even if it is already
safe for a shell without being quoted.
Comment thread
jb2170 marked this conversation as resolved.
Outdated

.. _shlex-quote-warning:

.. warning::
Expand Down Expand Up @@ -91,8 +94,23 @@ The :mod:`!shlex` module defines the following functions:
>>> command
['ls', '-l', 'somefile; rm -rf ~']

The *force* keyword can be used to produce consistent behavior when
escaping multiple strings:

>>> from shlex import quote
>>> filenames = ['my first file', 'file2', 'file 3']
>>> filenames_some_escaped = [quote(f, force=False) for f in filenames]
Comment thread
jb2170 marked this conversation as resolved.
Outdated
>>> filenames_some_escaped
["'my first file'", 'file2', "'file 3'"]
>>> filenames_all_escaped = [quote(f, force=True) for f in filenames]
>>> filenames_all_escaped
["'my first file'", "'file2'", "'file 3'"]

.. versionadded:: 3.3

.. versionchanged:: next
The *force* keyword was added.
Comment thread
jb2170 marked this conversation as resolved.

The :mod:`!shlex` module defines the following class:


Expand Down