Python convert a string to a logic operator

user3373458 picture user3373458 · Mar 3, 2014 · Viewed 7.2k times · Source

For example, if I have an expression like

x=True or True

if I evaluate in the shell the result is True

print(x)
x=True

So now I want to convert a string or an input to direct to that logic expression like

x=raw_input('Please give an expression:')

I know that the expression is a string so how to convert that string to a logic expression?

print(x)
x="True or True"

Answer

Christian picture Christian · Mar 3, 2014

You can use eval() function:

print eval(x)

Note that you must be cautious while using it.

Edit:

As @PriyankPatel mentioned, another way would be using exec:

exec("print " + x)