@@ -89,33 +89,34 @@ Out: '(-1.0+x)'
8989
9090### Available operators, constants and functions
9191
92- | Expression | Example | Output
93- | ---------- | ------- | ------
94- | + | `` parser.parse('2 + 2').evaluate({}) `` | 4
95- | - | `` parser.parse('3 - 1').evaluate({}) `` | 2
96- | ` * ` | `` parser.parse('2 * 3').evaluate({}) `` | 6
97- | / | `` parser.parse('5 / 2').evaluate({}) `` | 2.5
98- | % | `` parser.parse('5 % 2').evaluate({}) `` | 1
99- | ^ | `` parser.parse('5 ^ 2').evaluate({}) `` | 25.0
100- | PI | `` parser.parse('PI').evaluate({}) `` | 3.141592653589793
101- | E | `` parser.parse('E').evaluate({}) `` | 2.718281828459045
102- | sin(x) | `` parser.parse('sin(0)').evaluate({}) `` | 0.0
103- | cos(x) | `` parser.parse('cos(PI)').evaluate({}) `` | - 1.0
104- | tan(x) | `` parser.parse('tan(0)').evaluate({}) `` | 0.0
92+ | Expression | Example | Output
93+ | ---------- | ------- | ------
94+ | + | `` parser.parse('2 + 2').evaluate({}) `` | 4
95+ | - | `` parser.parse('3 - 1').evaluate({}) `` | 2
96+ | ` * ` | `` parser.parse('2 * 3').evaluate({}) `` | 6
97+ | / | `` parser.parse('5 / 2').evaluate({}) `` | 2.5
98+ | % | `` parser.parse('5 % 2').evaluate({}) `` | 1
99+ | ^ | `` parser.parse('5 ^ 2').evaluate({}) `` | 25.0
100+ | PI | `` parser.parse('PI').evaluate({}) `` | 3.141592653589793
101+ | E | `` parser.parse('E').evaluate({}) `` | 2.718281828459045
102+ | sin(x) | `` parser.parse('sin(0)').evaluate({}) `` | 0.0
103+ | cos(x) | `` parser.parse('cos(PI)').evaluate({}) `` | - 1.0
104+ | tan(x) | `` parser.parse('tan(0)').evaluate({}) `` | 0.0
105105| asin(x) | `` parser.parse('asin(0)').evaluate({}) `` | 0.0
106106| acos(x) | `` parser.parse('acos(-1)').evaluate({}) `` | 3.141592653589793
107- | atan(x) | `` parser.parse('atan(PI)').evaluate({}) `` | 1.2626272556789118
108- | log(x) | `` parser.parse('log(1)').evaluate({}) `` | 0.0
109- | log(x, base) | `` parser.parse('log(16, 2)').evaluate({}) `` | 4.0
110- | abs(x) | `` parser.parse('abs(-1)').evaluate({}) `` | 1
111- | ceil(x) | `` parser.parse('ceil(2.7)').evaluate({}) `` | 3.0
107+ | atan(x) | `` parser.parse('atan(PI)').evaluate({}) `` | 1.2626272556789118
108+ | log(x) | `` parser.parse('log(1)').evaluate({}) `` | 0.0
109+ | log(x, base)| `` parser.parse('log(16, 2)').evaluate({}) `` | 4.0
110+ | abs(x) | `` parser.parse('abs(-1)').evaluate({}) `` | 1
111+ | ceil(x) | `` parser.parse('ceil(2.7)').evaluate({}) `` | 3.0
112112| floor(x) | `` parser.parse('floor(2.7)').evaluate({}) `` | 2.0
113113| round(x) | `` parser.parse('round(2.7)').evaluate({}) `` | 3.0
114- | exp(x) | `` parser.parse('exp(2)').evaluate({}) `` | 7.38905609893065
115- | and | `` parser.parse('a and b').evaluate({'a':True, 'b':True}) `` | True
116- | or | `` parser.parse('a or b').evaluate({'a':True, 'b':True}) `` | True
117- | xor | `` parser.parse('a xor b').evaluate({'a':True, 'b':True}) `` | False
118- | not | `` parser.parse('a and not b').evaluate({'a':True, 'b':True}) `` | False
114+ | exp(x) | `` parser.parse('exp(2)').evaluate({}) `` | 7.38905609893065
115+ | and | `` parser.parse('a and b').evaluate({'a':True, 'b':True}) `` | True
116+ | or | `` parser.parse('a or b').evaluate({'a':True, 'b':True}) `` | True
117+ | xor | `` parser.parse('a xor b').evaluate({'a':True, 'b':True}) `` | False
118+ | not | `` parser.parse('a and not b').evaluate({'a':True, 'b':True}) `` | False
119+ | in | `` parser.parse('1 in (1,2,3)').evaluate({}) `` | True
119120
120121## Examples
121122
@@ -188,6 +189,9 @@ parser.parse('log(E)').evaluate({}) # 1.0
188189parser.parse(' cos(PI)' ).evaluate({}) # -1.0
189190
190191parser.parse(' x||y' ).evaluate({' x' : 2 , ' y' : 3 }) # '23'
192+
193+ parser.parse(' num in (1,2,3)' ).evaluate({' num' : 1 }) # True
194+ parser.parse(' "word" in "word in sentence"' ).evaluate({}) # True
191195```
192196
193197## Upload package to PyPi
0 commit comments