Path Utilities (bpy.path)
This module has a similar scope to os.path, containing utility functions for dealing with paths in Blender.
- bpy.path.abspath(path, *, start=None, library=None)
Returns the absolute path relative to the current blend file using the “//” prefix.
- Parameters
start (string or bytes) – Relative to this path, when not set the current filename is used.
library (
bpy.types.Library
) – The library this path is from. This is only included for convenience, when the library is not None its path replaces start.
- Returns
The absolute path.
- Return type
string
- bpy.path.basename(path)
Equivalent to
os.path.basename
, but skips a “//” prefix.Use for Windows compatibility. :return: The base name of the given path. :rtype: string
- bpy.path.clean_name(name, *, replace='_')
Returns a name with characters replaced that may cause problems under various circumstances, such as writing to a file. All characters besides A-Z/a-z, 0-9 are replaced with “_” or the replace argument if defined. :arg name: The path name. :type name: string or bytes :arg replace: The replacement for non-valid characters. :type replace: string :return: The cleaned name. :rtype: string
- bpy.path.display_name(name, *, has_ext=True, title_case=True)
Creates a display string from name to be used menus and the user interface. Intended for use with filenames and module names.
- Parameters
name (string) – The name to be used for displaying the user interface.
has_ext (boolean) – Remove file extension from name.
title_case (boolean) – Convert lowercase names to title case.
- Returns
The display string.
- Return type
string
- bpy.path.display_name_to_filepath(name)
Performs the reverse of display_name using literal versions of characters which aren’t supported in a filepath. :arg name: The display name to convert. :type name: string :return: The file path. :rtype: string
- bpy.path.display_name_from_filepath(name)
Returns the path stripped of directory and extension, ensured to be utf8 compatible. :arg name: The file path to convert. :type name: string :return: The display name. :rtype: string
- bpy.path.ensure_ext(filepath, ext, *, case_sensitive=False)
Return the path with the extension added if it is not already set.
- Parameters
filepath (string) – The file path.
ext (string) – The extension to check for, can be a compound extension. Should start with a dot, such as ‘.blend’ or ‘.tar.gz’.
case_sensitive (boolean) – Check for matching case when comparing extensions.
- Returns
The file path with the given extension.
- Return type
string
- bpy.path.is_subdir(path, directory)
Returns true if path in a subdirectory of directory. Both paths must be absolute.
- Parameters
path (string or bytes) – An absolute path.
- Returns
Whether or not the path is a subdirectory.
- Return type
boolean
- bpy.path.module_names(path, *, recursive=False)
Return a list of modules which can be imported from path.
- Parameters
path (string) – a directory to scan.
recursive (bool) – Also return submodule names for packages.
- Returns
a list of string pairs (module_name, module_file).
- Return type
list of strings
- bpy.path.native_pathsep(path)
Replace the path separator with the systems native
os.sep
. :arg path: The path to replace. :type path: string :return: The path with system native separators. :rtype: string
- bpy.path.reduce_dirs(dirs)
Given a sequence of directories, remove duplicates and any directories nested in one of the other paths. (Useful for recursive path searching).
- Parameters
dirs (sequence of strings) – Sequence of directory paths.
- Returns
A unique list of paths.
- Return type
list of strings
- bpy.path.relpath(path, *, start=None)
Returns the path relative to the current blend file using the “//” prefix.
- Parameters
path (string or bytes) – An absolute path.
start (string or bytes) – Relative to this path, when not set the current filename is used.
- Returns
The relative path.
- Return type
string
- bpy.path.resolve_ncase(path)
Resolve a case insensitive path on a case sensitive system, returning a string with the path if found else return the original path. :arg path: The path name to resolve. :type path: string :return: The resolved path. :rtype: string