Content of PYTHONPATH not appended to sys.path



  • Hi, this is my first post in the new forum. I'm exited 😉

    I noticed, that the content of the PYTHONPATH environment variable is not appended to the content of sys.path for the c4d python interpreter. Since we use a lot of site-modules in our company, this issue is rather annoying.

    For the time being I helped myself by updating sys.path during plugin initialization, but I rather would not.

    # extend sys.path whit content of PYTHONPATH
    python_path = os.environ['PYTHONPATH'].replace("\\", "/").split(';')
    for entry in python_path:
        if not entry in sys.path:
            sys.path.append(entry)
    

    Is there a way to tackle the problem in a more convenient way, like a command line parameter or an environment variable? Is this behavior intended or is it just overlooked during the R20 upgrade process?

    I looking forward to your answers,
    Cheers,
    Heinrich.



  • Hi Heinrich,

    Welcome to the new forum 😀

    PYTHONPATH not added to sys.path is a known issue and has been already fixed for the R20 SP2 update.
    I don't see a better workaround then your with R20 SP1 currently.

    I turned this topic into a Q&A. Please use this functionality in the future. For more information see Q&A New Functionality.



  • Hi,

    the issue is reappearing in R23.008, I'm wondering if this is a known one.

    thanks in advance,
    ben



  • Hi, correct this is a known issue, I should have mentioned in the Changelog, I will update it next week.

    We removed the usage of PYTHONPATH since it's too problematic in case of multiple Cinema 4D versions installed and since PYTHONPATH can be used for a large variety of scripts that could not work in Python 3.7



  • @m_adam thanks for R23.110 C4DPYTHONPATH37 ! ❤