import pymt940 import unittest import re # uni = pymt940.Unicredit('export.csv', 'RO50BACX0000001138725000') # uni.convert() # for i in uni.trans_df.values: # print(i[14]) # transi = pymt940.Transi('transi.csv') # transi.convert() # for i in transi.trans_df.values: # print(i[2]) def dig_it(search_in, fl_point=100, pattern=r'\d+'): fp = re.search(',', search_in) lfp = fp.start() + 1 fl_point = int('1{}'.format('0' * len(search_in[lfp:]))) # print(fl_point) if re.search('-', search_in): lfp = fp.start() + 1 fl_point = int('1{}'.format('0' * len(search_in[lfp:]))) return -int(''.join(re.findall(pattern, search_in))[:-len(search_in[lfp:])]) +\ -int(''.join(re.findall(pattern, search_in))[-len(search_in[lfp:])]) / fl_point else: return int(''.join(re.findall(pattern, search_in))[:-len(search_in[lfp:])]) +\ int(''.join(re.findall(pattern, search_in))[-len(search_in[lfp:]):]) / fl_point if __name__ == '__main__': transi = pymt940.Transi('RO26BTRL01301202N63584XX.csv', 'RO26BTRL01301202N63584XX') s = '24345,4568' # fp = re.search(',', s) # lfp = fp.start()+1 # print(transi._isdebit('-3.50')) # print(transi._trans_df['Debit']) # fp = re.search(',', s) print(dig_it(s)) # print(len(s[lfp:]))