import re def read_one_thermo(filename): try: NO_OF_DECIMALS = 3 for x in range(0, 3): textfile = open(filename, 'r') filetext = textfile.read() textfile.close() if 'YES' in filetext: matches = re.findall("t=(\-?)(\d+)", filetext) sign = -1 if matches[0][0] == '-' else 1 whole_reading = matches[0][1] first_part = matches[0][1][0:-NO_OF_DECIMALS] second_part = matches[0][1][-NO_OF_DECIMALS:] first_part = '0' if first_part == '' else first_part return (int(first_part) + (int(second_part) / (10.0 ** NO_OF_DECIMALS) )) * sign print 'error' print e return -101.0 except Exception as e: print 'errror' print e return -100.0 def read_many_thermo(filenames): result = [] for filename in list(filenames): if filename is None: continue result.append(read_one_thermo(filename)) return result