From 5d9352b12fac1708ab82ec2d1add047a4c568a66 Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Wed, 22 Sep 2021 01:45:57 +0200 Subject: [PATCH] MAINT: Fix typo in public API By keeping both variants, we aim to full backwards compatibility. The new variant does appear in the documentation, the mispelled variant is missing from the documentation but has priority. --- numpy/ma/mrecords.py | 14 +++++++++----- numpy/ma/tests/test_mrecords.py | 2 +- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/numpy/ma/mrecords.py b/numpy/ma/mrecords.py index 10b1b209c20e..cd38f0f5c568 100644 --- a/numpy/ma/mrecords.py +++ b/numpy/ma/mrecords.py @@ -667,8 +667,9 @@ def openfile(fname): raise NotImplementedError("Wow, binary file") -def fromtextfile(fname, delimitor=None, commentchar='#', missingchar='', - varnames=None, vartypes=None): +def fromtextfile(fname, delimiter=None, commentchar='#', missingchar='', + varnames=None, vartypes=None, + delimitor=None): # mispelled for backwards compatibility """ Creates a mrecarray from data stored in the file `filename`. @@ -676,7 +677,7 @@ def fromtextfile(fname, delimitor=None, commentchar='#', missingchar='', ---------- fname : {file name/handle} Handle of an opened file. - delimitor : {None, string}, optional + delimiter : {None, string}, optional Alphanumeric character used to separate columns in the file. If None, any (group of) white spacestring(s) will be used. commentchar : {'#', string}, optional @@ -692,6 +693,9 @@ def fromtextfile(fname, delimitor=None, commentchar='#', missingchar='', Ultra simple: the varnames are in the header, one line""" + if delimitor is not None: + delimiter = delimitor + # Try to open the file. ftext = openfile(fname) @@ -699,14 +703,14 @@ def fromtextfile(fname, delimitor=None, commentchar='#', missingchar='', while True: line = ftext.readline() firstline = line[:line.find(commentchar)].strip() - _varnames = firstline.split(delimitor) + _varnames = firstline.split(delimiter) if len(_varnames) > 1: break if varnames is None: varnames = _varnames # Get the data. - _variables = masked_array([line.strip().split(delimitor) for line in ftext + _variables = masked_array([line.strip().split(delimiter) for line in ftext if line[0] != commentchar and len(line) > 1]) (_, nfields) = _variables.shape ftext.close() diff --git a/numpy/ma/tests/test_mrecords.py b/numpy/ma/tests/test_mrecords.py index 27df519d266a..4b2c01df9947 100644 --- a/numpy/ma/tests/test_mrecords.py +++ b/numpy/ma/tests/test_mrecords.py @@ -468,7 +468,7 @@ def test_fromtextfile(self): with temppath() as path: with open(path, 'w') as f: f.write(fcontent) - mrectxt = fromtextfile(path, delimitor=',', varnames='ABCDEFG') + mrectxt = fromtextfile(path, delimiter=',', varnames='ABCDEFG') assert_(isinstance(mrectxt, MaskedRecords)) assert_equal(mrectxt.F, [1, 1, 1, 1]) assert_equal(mrectxt.E._mask, [1, 1, 1, 1])