diff options
| author | Adam Olech <nddr89@gmail.com> | 2021-11-11 14:31:01 +0100 |
|---|---|---|
| committer | Adam Olech <nddr89@gmail.com> | 2021-11-11 14:31:01 +0100 |
| commit | de7f1b3fb006a50dcb4889becd1b391ea1adb584 (patch) | |
| tree | 9e79781c0d061c9ca7d49a95cb6fcf8251158acb /extract-data-from-abs-guide | |
| parent | 1e505562322cc0a66261fa2d3333ea00417be7c6 (diff) | |
Initial extract.py
Diffstat (limited to 'extract-data-from-abs-guide')
| -rw-r--r-- | extract-data-from-abs-guide/extract.py | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/extract-data-from-abs-guide/extract.py b/extract-data-from-abs-guide/extract.py new file mode 100644 index 0000000..baeb6e2 --- /dev/null +++ b/extract-data-from-abs-guide/extract.py @@ -0,0 +1,39 @@ +#!/usr/bin/env python3 + +import glob + +def chunks(lst, n): + """Yield successive n-sized chunks from lst.""" + for i in range(0, len(lst), n): + yield lst[i:i + n] + +inputs = glob.glob('files/*.txt') + +TEMPLATE_CC = '# TEMPLATE: ' + +for input in inputs: + print(input) + with open(input, 'r') as f: + lines = f.readlines() + + if not len(lines): + continue + + template = None + + if lines[0].startswith(TEMPLATE_CC): + template = lines.pop(0).split(TEMPLATE_CC)[1] + + lines = list(filter(bool, [line.strip().replace('\n', '') for line in lines])) + + if template: + value_matrix = list(chunks(lines, 2)) + + for idx in range(len(value_matrix)): + value_matrix[idx].append( + template.strip().format(value_matrix[idx][0]) + ) + else: + value_matrix = chunks(lines, 3) + + print(list(value_matrix)) |
