I recently asked about the same thing, although there wasn't much discussion as 
a result.

Pylint is aware of "from __future__ import print_function" and using it will 
suppress this warning you are seeing. However that is not available for Python 
2.5, so it depends on what kind of compatibility you're aiming for, I guess.

Given that the __future__ import exists, my preference is that pylint does 
warn, as using brackets near a print statement like that could represent a 
mistake and it's better to warn too much than too little. However I would also 
like to see a new error code for the print statement alone. Currently the 
'superfluous-parens' warning covers all cases including 'if' and 'for' 
statements etc. A separate error code for the print statement/function would 
allow people to disable it independently and not remove the other useful 
warnings.

On 06.02.2014, at 06:48, Alexandre Fayolle ML <afayolle...@free.fr> wrote:

> On 06/02/2014 02:13, Dan Stromberg wrote:
>> 
>> I noticed recently that pylint has begun warning about use of parens on 
>> print statements in Python 2.x code.
>> 
>> This seems reasonable on the face of it, except it deters writing code that 
>> runs on 2.x and 3.x, unmodified.
>> 
>> The error looks like:
>> C:  5, 0: Unnecessary parens after 'print' keyword (superfluous-parens)
>> 
>> The offending line looks like:
>> print('hello')
>> 
>> To Python 2.x, that is printing the result of a parenthesized expression. To 
>> Python 3.x, it is of course a print function.
>> 
>> I understand that doing something like:
>> print('number:', 1)
>> ...would be bad in a dual-codebase script, but having a single argument 
>> works, and indeed is often a good idea for portability.
>> 
>> Thoughts?
>> 
>> -- 
>> Dan Stromberg
>> 
>> 
>> _______________________________________________
>> Python-Projects mailing list
>> python-proje...@lists.logilab.org
>> http://lists.logilab.org/mailman/listinfo/python-projects
> 
> There is a __future__ import to enable print_function in python 2[67]. I'm 
> not sure if Pylint knows about it, though...
> 
> cc-ing code-quality. 
> 
> Alexandre
> 
> 
> _______________________________________________
> code-quality mailing list
> code-quality@python.org
> https://mail.python.org/mailman/listinfo/code-quality

_______________________________________________
code-quality mailing list
code-quality@python.org
https://mail.python.org/mailman/listinfo/code-quality

Reply via email to