try: def sort(text): myarray = [] # open file with open(text,'r') as file: text_ro = file.read() # get rid of everything usless text = text_ro.replace("-","").replace("+","").replace("(","").replace(" rows)","").replace(" ","").replace("||","|NULL|").replace("\n","|") # split at every | lines = [line.strip()for line in text.split('|') if line.strip()] #gets rid of everything useless rows = lines[-1] rows = int(rows) lines.pop() one_row_items = len(lines)/rows one_row_items = int(one_row_items) del lines[:one_row_items] # order in the correct list for x in range(rows): myarray.append([]) for x in range(rows): for y in range(one_row_items): myarray[x].append(lines[(one_row_items * x) + y]) return myarray except Exception as error: print(error)