/
vasandi
/
AirSim
Обзор
Документация
Войти
/
vasandi
/
AirSim
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
PythonClient/reinforcement_learning/setup_path.py
52 строки
2 KB
Андрей Васильченко
сборка под ubuntu 26.04
08 июл 2026, 10:15
08 июл 2026, 10:15
d53c5a2
Код
Авторство
О чём код?
# Import this module to automatically setup path to local airsim module # This module first tries to see if airsim module is installed via pip # If it does then we don't do anything else # Else we look up grand-parent folder to see if it has airsim folder # and if it does then we add that in sys.path import os,sys,inspect,logging #this class simply tries to see if airsim class SetupPath: @staticmethod def getDirLevels(path): path_norm = os.path.normpath(path) return len(path_norm.split(os.sep)) @staticmethod def getCurrentPath(): cur_filepath = os.path.abspath(inspect.getfile(inspect.currentframe())) return os.path.dirname(cur_filepath) @staticmethod def getGrandParentDir(): cur_path = SetupPath.getCurrentPath() if SetupPath.getDirLevels(cur_path) >= 2: return os.path.dirname(os.path.dirname(cur_path)) return '' @staticmethod def getParentDir(): cur_path = SetupPath.getCurrentPath() if SetupPath.getDirLevels(cur_path) >= 1: return os.path.dirname(cur_path) return '' @staticmethod def addAirSimModulePath(): # if airsim module is installed then don't do anything else #import pkgutil #airsim_loader = pkgutil.find_loader('airsim') #if airsim_loader is not None: # return parent = SetupPath.getParentDir() if parent != '': airsim_path = os.path.join(parent, 'airsim') client_path = os.path.join(airsim_path, 'client.py') if os.path.exists(client_path): sys.path.insert(0, parent) else: logging.warning("airsim module not found in parent folder. Using installed package (pip install airsim).") SetupPath.addAirSimModulePath()