On 17/08/2019 01:07, Gregory Ewing wrote:
On Sat, Aug 17, 2019 at 2:27 AM Paul St George <em...@paulstgeorge.com> wrote:

BUT does not work with
| print('test2:',os.path.realpath(n.image.filepath))|

This returns only
|/image01.tif|

What does n.image.filepath look like on its own? If it starts
with a leading slash, then os.path.realpath will think it's
already an absolute path and leave it alone.

The problem then is why it's getting a leading slash in the
first place. It looks like the result of something naively
trying to append a filename to an empty directory path.

Gregory,
Thank you for this. You ask what n.image.filepath looks like on its own. Here (below) are some tests and the results: You are right about the leading slashes. I have tried to remove them and then use os.path.realpath and os.path.abspath but it is as if the slash is still there. Perhaps there is a better way to remove the slash - perhaps by getting the name of the file. Then I could find the true path to the directory that contains the file, and finally join the two together.

But there must be a simpler way?


 print('Track A:',n.image.filepath)
---Track A: //image01.tif

print('Track B:',n.image.filepath[1:])
---Track B: /image01.tif

 print('Track C:',n.image.filepath[2:])
---Track C: image01.tif

 print('Track D  from Track B:',os.path.realpath(n.image.filepath))
---Track D  from Track B: /image01.tif

 print('Track E  from Track B:',os.path.realpath(n.image.filepath[1:]))
---Track E  from Track B: /image01.tif

 print('Track F from Track C:',os.path.realpath(n.image.filepath[2:]))
---Track F from Track C: /image01.tif

 print('Track G from Track C:',os.path.abspath(n.image.filepath[2:]))
---Track G from Track C: /image01.tif

--
https://mail.python.org/mailman/listinfo/python-list

Reply via email to