class documentation

class NameValidator:

View In Hierarchy

Object to validate a list of strings to use as field names.

The strings are stripped of any non alphanumeric character, and spaces are replaced by '_'. During instantiation, the user can define a list of names to exclude, as well as a list of invalid characters. Names in the exclusion list are appended a '_' character.

Once an instance has been created, it can be called with a list of names, and a list of valid names will be created. The __call__ method accepts an optional keyword "default" that sets the default name in case of ambiguity. By default this is 'f', so that names will default to f0, f1, etc.

Parameters

excludelist : sequence, optional
A list of names to exclude. This list is appended to the default list ['return', 'file', 'print']. Excluded names are appended an underscore: for example, file becomes file_ if supplied.
deletechars : str, optional
A string combining invalid characters that must be deleted from the names.
case_sensitive : {True, False, 'upper', 'lower'}, optional
  • If True, field names are case-sensitive.
  • If False or 'upper', field names are converted to upper case.
  • If 'lower', field names are converted to lower case.

The default value is True.

replace_space : '_', optional
Character(s) used in replacement of white spaces.

Notes

Calling an instance of NameValidator is the same as calling its method validate.

Examples

>>> validator = np.lib._iotools.NameValidator()
>>> validator(['file', 'field2', 'with space', 'CaSe'])
('file_', 'field2', 'with_space', 'CaSe')
>>> validator = np.lib._iotools.NameValidator(excludelist=['excl'],
...                                           deletechars='q',
...                                           case_sensitive=False)
>>> validator(['excl', 'field2', 'no_q', 'with space', 'CaSe'])
('EXCL', 'FIELD2', 'NO_Q', 'WITH_SPACE', 'CASE')
Method __call__ Undocumented
Method __init__ Undocumented
Method validate Validate a list of strings as field names for a structured array.
Class Variable defaultdeletechars Undocumented
Class Variable defaultexcludelist Undocumented
Instance Variable case​_converter Undocumented
Instance Variable deletechars Undocumented
Instance Variable excludelist Undocumented
Instance Variable replace​_space Undocumented
def __call__(self, names, defaultfmt='f%i', nbfields=None):

Undocumented

def __init__(self, excludelist=None, deletechars=None, case_sensitive=None, replace_space='_'):

Undocumented

def validate(self, names, defaultfmt='f%i', nbfields=None):

Validate a list of strings as field names for a structured array.

Parameters

names : sequence of str
Strings to be validated.
defaultfmt : str, optional
Default format string, used if validating a given string reduces its length to zero.
nbfields : integer, optional
Final number of validated names, used to expand or shrink the initial list of names.

Returns

validatednames : list of str
The list of validated field names.

Notes

A NameValidator instance can be called directly, which is the same as calling validate. For examples, see NameValidator.

defaultdeletechars =

Undocumented

defaultexcludelist: list[str] =

Undocumented

case_converter =

Undocumented

deletechars =

Undocumented

excludelist =

Undocumented

replace_space =

Undocumented