FNAME = "ifconfig.txt" ADAPTERS = dict() with open(FNAME) as fid: for linenumber, line in enumerate(fid): if line[0] is not " ": # if ("ether" in line) or ("HWaddr" in line): # print(line) infos = line.split() if(infos and "lo" not in infos[0] and "tun" not in infos[0]): adapter, mac = infos[0], infos[4] # print(linenumber, adapter, mac) print(infos) ADAPTERS[adapter] = mac FNAME_BASE = FNAME[:FNAME.rfind(".txt")] FNAME_OUT = FNAME_BASE + "_adapters.txt" FNAME_OUT2 = FNAME_BASE + "_adapters_changed.txt" with open(FNAME_OUT, "w") as fid: for adapter, mac in ADAPTERS.items(): fid.write("Adapter: " + adapter + ", MAC: " + mac + "\n") BASEMAC = "01:23:45:ff:00:" with open(FNAME_OUT2, "w") as fid: for i, (adapter, mac) in enumerate(ADAPTERS.items()): mac_changed = BASEMAC + "%02x" %(i+1) mac_changed = BASEMAC + "{0:02x}".format((i+1)) fid.write("Adapter: " + adapter + ", MAC: " + mac_changed + "\n")