Сначала сделайте все каталоги импортируемыми, т.е. используйте __init__.py
.
Затем создайте сценарий верхнего уровня, который принимает аргументы и вызывает сценарии, основанные на этом.
В течение длительного времени справедливо то, что Кит упоминал о distutils. В противном случае здесь есть более простое (конечно, не лучшее) решение.
Организация
runscript.py
group1
__init__.py
script1.py
utils
__init__.py
utils1.py
1012 * Воззвание *
python runscript -g grp1 -s script1
runscript.py
import utils
def main():
script_to_exec = process_args()
import script_to_exec as script # __import__
script.main()
main()
Возможно, ваш скрипт может иметь функцию main, которая затем вызывается runScript.
Я предлагаю, чтобы у вас был скрипт на верхнем уровне, который импортирует скрипт.