Lines 35
##### Keywords
numpy (3) python (33) string manipulation (1)
##### Permissions
Owner: Theodore Test
Viewable by Everyone
Editable by All Siafoo Users
Need a quick chart or graph for your blog? Try our reStructured Text renderer.

# Leading Whitespace Quantification Function 0

 In Brief A simple function that counts how many leading spaces are found in each entry of a list of strings. Also returns the whitespace-stripped strings and their lengths as lists.
 Language NumPy
# 's
` 1import numpy 2 3def parse_string_list(string_list,tabs_to_spaces=4): 4    '''Takes an iterable containter of strings. 5     6    Quantifies number of line-leading whitespace characters. Converts tabs to spaces. 7     8    Returns three lists of equal length as a tuple. 9    The first is a list the strings, whitespace-stripped.10    The second is a list of numerical counts of line-leading whitespace characters clipped.11    The third is a list of the lengths of the stripped strings.'''1213    rstripped = [l.rstrip() for l in string_list]14    expanded_lines = [l.expandtabs(tabs_to_spaces) for l in rstripped]15    both_stripped = [l.strip() for l in string_list]16    expanded_lens = [len(l) for l in expanded_lines]17    stripped_lens = [len(l) for l in both_stripped]18    19    exp_lens_array = numpy.asarray(expanded_lens)20    stripped_lens_array = numpy.asarray(stripped_lens)21    indentations = exp_lens_array - stripped_lens_array22    indentations_list = list(indentations)23    24    return both_stripped,indentations_list,stripped_lens2526# Toy example27if __name__ == "__main__":28    sample_string_list = ['stuff',29                          '    space_indented',30                          '        double_indented',31                          'not_indented',32                          '',33                          'after_blank',34                          'no_blank']35    out = lines,indentations,content_lengths = parse_string_list(sample_string_list)36    for l in out:37        print l38        print '...of length', len(l)`

A simple function that counts how many leading spaces are found in each entry of a list of strings. Also returns the whitespace-stripped strings and their lengths as lists.