diff options
| author | Claudius "keldu" Holeksa <mail@keldu.de> | 2026-03-04 11:02:43 +0100 |
|---|---|---|
| committer | Claudius "keldu" Holeksa <mail@keldu.de> | 2026-03-04 11:03:01 +0100 |
| commit | c4226ba28f0bd783686e6b245f35738dc34cd644 (patch) | |
| tree | f3c8760173a5d0c5ebd99949119882be3869c2a1 | |
| parent | 16700f013886b8d8cb02e322c2d66c00179d9c89 (diff) | |
| download | libs-lbm-c4226ba28f0bd783686e6b245f35738dc34cd644.tar.gz | |
Bit non descript file
| -rw-r--r-- | scripts/do_stuff | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/scripts/do_stuff b/scripts/do_stuff new file mode 100644 index 0000000..6bdbfd7 --- /dev/null +++ b/scripts/do_stuff @@ -0,0 +1,37 @@ +#!/usr/bin/env python3 + +import csv +import sys +from itertools import islice + +def sum_csv_line(filename, line_number): + """Return the sum of a specific line in a CSV file.""" + try: + with open(filename, newline="") as file: + reader = csv.reader(file) + row = next(islice(reader, line_number - 1, None)) + # Convert values to float and sum + return sum(float(x) for x in row) + except StopIteration: + raise ValueError(f"Line {line_number} exceeds file length") + except ValueError as e: + raise ValueError(f"Non-numeric value encountered: {e}") + +if __name__ == "__main__": + if len(sys.argv) != 3: + print("Usage: python script.py <filename> <line_number>") + sys.exit(1) + + filename = sys.argv[1] + try: + line_number = int(sys.argv[2]) + except ValueError: + print("Line number must be an integer.") + sys.exit(1) + + try: + total = sum_csv_line(filename, line_number) + print(f"Sum of line {line_number}: {total}") + except Exception as e: + print(f"Error: {e}") + sys.exit(1) |
