absolute path to a file

Paul St George email at paulstgeorge.com
Thu Aug 15 16:00:17 EDT 2019


Can someone please tell me how to get the absolute path to a file? I 
have tried os.path.abspath. In the code below I have a problem in the 
final line (15).

#
|import bpy||
||import os||
||
||texture_list = []||
||
||with open(os.path.splitext(bpy.data.filepath)[0] + ".txt", "w") as 
outstream:||
||
||
|| for obj in bpy.context.scene.objects:||
||    for s in obj.material_slots:||
||        if s.material and s.material.use_nodes:||
||            for n in s.material.node_tree.nodes:||
||                if n.type == 'TEX_IMAGE':||
||                    texture_list += [n.image]||
||print(obj.name,'uses',n.image.name,'saved at',n.image.filepath, 'which 
is at', os.path.abspath(n.image.filepath), file=outstream)||
|#

This gives me:
---Plane uses image01.tif saved at //image01.tif which is at //image01.tif
---Plane uses image02.tif saved at //../images/image02.tif which is at 
//images/image02.tif

But I want an absolute path such as:
---Plane uses image01.tif saved at /Users/Lion/Desktop/test8/image01.tif
---Plane uses image02.tif saved at /Users/Lion/Desktop/images/image02.tif

If it is relevant, my files are on a Mac. Hence the escaped forward slash.

-- 
Paul St George
http://www.paulstgeorge.com
http://www.devices-of-wonder.com




More information about the Python-list mailing list