#!/usr/bin/env python3 import numpy as np import csv import itertools import math #https://stackoverflow.com/questions/5360220/how-to-split-a-list-into-pairs-in-all-possible-ways def all_pairs(lst): if len(lst) < 2: yield lst return a = lst[0] for i in range(1,len(lst)): pair = (a,lst[i]) for rest in all_pairs(lst[1:i]+lst[i+1:]): yield [pair] + rest column_label=0 column_capacity=3 column_resistance=4 config_parallel=2 config_cells=12 #config_parallel*config_cells*config_packs needed batteriesneeded=config_parallel*config_cells batteries=[] batterylabels=[] with open('12S_LiIon_Akkupack_selected.csv', 'r') as csvfile: csvreader = csv.reader(csvfile, delimiter=';') firstrow=True for row in csvreader: label=row[column_label] capacity=row[column_capacity] resistance=row[column_resistance] if not firstrow: capacity=float(capacity) resistance=float(resistance) batteries.append([label,capacity,resistance]) batterylabels.append(label) firstrow=False print(str(len(batteries))+" Batteries found") if len(batteries)==batteriesneeded: print("You have just enough batteries") elif len(batteries)>batteriesneeded: print("You have "+str(len(batteries)-batteriesneeded)+" batteries spare") elif len(batteries)