New submission from Martin Drawitsch <martin.drawit...@gmail.com>: I think I found a bug in the new print syntax suggestion introduced by https://bugs.python.org/issue30597.
When the following code is executed by Python 3.6.3 inside of a .py file: def f(): print '%d' % 2 , then Python gives the following error message: SyntaxError: Missing parentheses in call to 'print'. Did you mean print(int '%d' % 2)? The "int" next to the left brace of the suggested print function is obviously wrong. The expected message would be: SyntaxError: Missing parentheses in call to 'print'. Did you mean print('%d' % 2)? Using other values or "%s" in the formatted string in a print statement produces the same wrong message. This bug only seems to happen when the print statement is inside of a function AND when it is is run inside of a .py file. At least I could not reproduce it in the python3 REPL or outside of a function. I am attaching the minimal example file in this bug report. Running it with "$ python3 print.py" should show the mentioned bug. ---------- components: Interpreter Core files: print.py messages: 306231 nosy: CuriousLearner, mdraw, ncoghlan priority: normal severity: normal status: open title: Syntactically wrong suggestions by the new custom print statement error message type: behavior versions: Python 3.6 Added file: https://bugs.python.org/file47265/print.py _______________________________________ Python tracker <rep...@bugs.python.org> <https://bugs.python.org/issue32028> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com