import re import sys def get_xy(line): xmatch = re.search(r"X(\d*)", line) ymatch = re.search(r"Y(\d*)", line) if xmatch is None or ymatch is None: return None, None xval = int(xmatch.group().strip("X")) yval = int(ymatch.group().strip("Y")) return xval, yval def parse_file(fname): with open(fname) as fp: lines = fp.read().splitlines() minx = float('inf') miny = float('inf') maxx = float('-inf') maxy = float('-inf') for line in lines: x, y = get_xy(line) if x is None or y is None: continue minx = min(x, minx) maxx = max(x, maxx) miny = min(y, miny) maxy = max(y, maxy) print(f"MinX={minx}, MinY={miny}, MaxX={maxx}, MaxY={maxy}") if __name__ == '__main__': parse_file(sys.argv[1])