ahm. i actually rewrote it trice and each time i made it convert from the previous conversion result to the new one.
if you want a direct conversion try this:
from sys import argv,exit
if len(argv) >1:
level = int(argv[1])
else:
print "no level nr supplied"
exit()
data=open("./level_"+str(level)).read().split("\n")
output = open("./level_"+str(level),"w" )
for x in range(0,len(data)):
for y in range(0,len(data[x])):
if data[x][y]=="1":
output.write("<Type=tile,Pos=")
elif data[x][y]=="2":
output.write("<Type=start,Pos=")
elif data[x][y]=="3":
output.write("<Type=goal,Pos=")
elif data[x][y]=="4":
output.write("<Type=weaktile,Pos=")
else:
continue
output.write(str(x)+"_"+str(y)+">")
output.write("\n")
print "converted levelNr:",level
output.close()