[Python-checkins] gh-65496: Correct wording on csv's skipinitialspace argument (GH-96170)

miss-islington webhook-mailer at python.org
Fri Oct 7 19:45:58 EDT 2022


https://github.com/python/cpython/commit/c2f21af42a50b36e0ef2fce9caaf3a36e946431c
commit: c2f21af42a50b36e0ef2fce9caaf3a36e946431c
branch: 3.11
author: Miss Islington (bot) <31488909+miss-islington at users.noreply.github.com>
committer: miss-islington <31488909+miss-islington at users.noreply.github.com>
date: 2022-10-07T16:45:53-07:00
summary:

gh-65496: Correct wording on csv's skipinitialspace argument (GH-96170)

(cherry picked from commit 676d8ef3806758bcd1d3fd84a746c8a9b64480d0)

Co-authored-by: Stanley <46876382+slateny at users.noreply.github.com>

files:
M Doc/library/csv.rst
M Lib/test/test_csv.py
M Modules/_csv.c

diff --git a/Doc/library/csv.rst b/Doc/library/csv.rst
index 9dec7240d9c5..f7e85f2baa73 100644
--- a/Doc/library/csv.rst
+++ b/Doc/library/csv.rst
@@ -416,7 +416,7 @@ Dialects support the following attributes:
 
 .. attribute:: Dialect.skipinitialspace
 
-   When :const:`True`, whitespace immediately following the *delimiter* is ignored.
+   When :const:`True`, spaces immediately following the *delimiter* are ignored.
    The default is :const:`False`.
 
 
diff --git a/Lib/test/test_csv.py b/Lib/test/test_csv.py
index ff2a668c422f..834217bf6030 100644
--- a/Lib/test/test_csv.py
+++ b/Lib/test/test_csv.py
@@ -362,6 +362,11 @@ def test_read_quoting(self):
         self._read_test(['1,@,3,@,5'], [['1', ',3,', '5']], quotechar='@')
         self._read_test(['1,\0,3,\0,5'], [['1', ',3,', '5']], quotechar='\0')
 
+    def test_read_skipinitialspace(self):
+        self._read_test(['no space, space,  spaces,\ttab'],
+                        [['no space', 'space', 'spaces', '\ttab']],
+                        skipinitialspace=True)
+
     def test_read_bigfield(self):
         # This exercises the buffer realloc functionality and field size
         # limits.
diff --git a/Modules/_csv.c b/Modules/_csv.c
index cbf4c5de5196..7519da6807fe 100644
--- a/Modules/_csv.c
+++ b/Modules/_csv.c
@@ -704,7 +704,7 @@ parse_process_char(ReaderObj *self, _csvstate *module_state, Py_UCS4 c)
             self->state = ESCAPED_CHAR;
         }
         else if (c == ' ' && dialect->skipinitialspace)
-            /* ignore space at start of field */
+            /* ignore spaces at start of field */
             ;
         else if (c == dialect->delimiter) {
             /* save empty field */
@@ -1647,9 +1647,9 @@ PyDoc_STRVAR(csv_module_doc,
 "        quoting character.  It defaults to '\"'.\n"
 "    * delimiter - specifies a one-character string to use as the\n"
 "        field separator.  It defaults to ','.\n"
-"    * skipinitialspace - specifies how to interpret whitespace which\n"
-"        immediately follows a delimiter.  It defaults to False, which\n"
-"        means that whitespace immediately following a delimiter is part\n"
+"    * skipinitialspace - specifies how to interpret spaces which\n"
+"        immediately follow a delimiter.  It defaults to False, which\n"
+"        means that spaces immediately following a delimiter is part\n"
 "        of the following field.\n"
 "    * lineterminator -  specifies the character sequence which should\n"
 "        terminate rows.\n"



More information about the Python-checkins mailing list