In Python, leaving a trailing comma like this is, of course, not a SyntaxError
:
In [1]: x = 1 ,
In [2]: x
Out[2]: (1,)
In [3]: type(x)
Out[3]: tuple
But, at the same time, if the trailing comma was put accidentally, it may be difficult to catch this kind of a "problem", especially for Python newcomers.
I am thinking if we can catch this kind of a "problem" early, statically, with the help of PyCharm
smart code quality control features; mypy
, pylint
or flake8
static code analysis tools.
Or, another idea would be to restrict/highlight creating one item tuples implicitly without parenthesis. Is it possible?
1,
is pretty explicit. Yes, static analysis can help you find cases where you create a one-element tuple. – Agalloch