program write_txt

real(kind=8):: x

open(10,file='data.txt')

do i = 1,10
    x = i*2.
    write(10,fmt='(2(D12.3))') x,x**2
enddo

close(10)

end program write_txt





In [1]: def expDtofloat(s):
   ...:     return float(s.replace('D','E'))
   ...:

In [2]: x,y = loadtxt('data.txt',unpack=True,converters={0:expDtofloat,1:expDtofloat})



Not really better than re.sub() ...