 
            dap1--- via Mailman-users writes:
Now that I look at it shouldn't PYTHONPATH=/opt/mailman/venv?
You shouldn't need a PYTHONPATH setting at all, unless you have local packages installed in nonstandard places. I don't have one, anyway, not in any of the Mailman 3 installations I'm managing at the moment.
If setting PYTHONPATH to include the venv directory changes Mailman behavior, I wonder if your virtual environment is misconfigured somehow. There are no Python libraries (*.py) or packages (a directory containing a __init__.py file) in that directory normally, so it is a no-op. Unfortunately I don't know enough about the internals to be of help with diagnosing it.
IIRC, the Python library search path is managed by (1) the virtual environment and (2) the directory containing the configuration file in use is first on the path (either the current working directory is changed to that, or it's explicitly added to the path). That file is specified explicitly with either with a command line option or an environment variable in the systemd unit file. (There's also a search path for mailman.cfg if there is no explicit setting, but its directory is always added to the path.)
It's a little bit tricky but in practice it works fine.
-- GNU Mailman consultant (installation, migration, customization) Sirius Open Source https://www.siriusopensource.com/ Software systems consulting in Europe, North America, and Japan