06.08.18 08:13, Stephen McDowell пише:
I've looked at the C code for a while and it is entirely non-obvious what would lead to python *2* /allowing/ >255 arguments. Anybody happen to know how / why the python *2* versions *succeed*?
The error message is misleading. It should be "more than 255 parameters". This limitation is due to the optimization used in Python 3 for call variables (see https://bugs.python.org/issue12399 for details).
In all versions <3.7 there is a limitation on the number of explicit function arguments because of the limitation of the CALL_FUNCTION opcode.
Thank you for reading, this is not a problem, just a burning desire for closure (even if anecdotal) as to how this can be. I deeply love python, and am not complaining! I stumbled across this and found it truly confounding, and thought the gurus here may happen to recall what changed in 3.x that lead the the error condition actually being asserted :)
Read the history of the code. Commit messages usually contain explanations or references to issues.
_______________________________________________ Python-Dev mailing list Python-Dev@python.org https://mail.python.org/mailman/listinfo/python-dev Unsubscribe: https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com