Le 27/02/17 à 14:09, Chris Angelico a écrit :
On Mon, Feb 27, 2017 at 11:57 PM, Vincent Vande Vyvre
<vincent.vande.vy...@telenet.be> wrote:
I've this strange error:

Python 3.4.3 (default, Nov 17 2016, 01:08:31)
[GCC 4.8.4] on linux
Type "help", "copyright", "credits" or "license" for more information.
import ast
l = "print('hello world')"
ast.literal_eval(l)
Traceback (most recent call last):
   File "<stdin>", line 1, in <module>
   File "/usr/lib/python3.4/ast.py", line 84, in literal_eval
     return _convert(node_or_string)
   File "/usr/lib/python3.4/ast.py", line 83, in _convert
     raise ValueError('malformed node or string: ' + repr(node))
ValueError: malformed node or string: <_ast.Call object at 0x7fcf955871d0>


Is it an import question ?
The message is a little confusing, but the error comes from the fact
that literal_eval permits a very few legal operations, and calling a
function isn't one of them. So when you try to evaluate the "literal"
that you've given it, you get back an error saying that a Call is
'malformed'. More accurate would be to say that it's not permitted.

ChrisA

OK, it's coherent with the secure execution.


Thanks


Vincent

--
https://mail.python.org/mailman/listinfo/python-list

Reply via email to