<p>IIUC</p>
<pre class="lang-py prettyprint-override"><code>from sympy import *
Rfinal = dict()
Bfinal = dict()
x, y = symbols('x y')
Red = [(1,1),(2,1),(4,2),(2,4), (-1,4)]
Blue = [(-2,-1),(-1,-2),(-3,-2),(-3,-1),(1,-3)]
Lines = [x+y, x-y, x+y-3, x+y-0.5]
for exp in Lines:
Rfinal[exp]={}
Bfinal[exp]={}
for point in Red:
d = exp.subs(x,point[0]).subs(y,point[1])
if d > 0:
Rfinal[exp][point] = 'positivepoint'
elif d == 0:
Rfinal[exp][point] = 'pointontheline'
else:
Rfinal[exp][point] = 'negativepoint'
for point in Blue:
d = exp.subs(x,point[0]).subs(y,point[1])
if d > 0:
Bfinal[exp][point] = 'positivepoint'
elif d == 0:
Bfinal[exp][point] = 'pointontheline'
else:
Bfinal[exp][point] = 'negativepoint'
Bfinal
{x + y: {
(-2, -1): 'negativepoint',
(-1, -2): 'negativepoint',
(-3, -2): 'negativepoint',
(-3, -1): 'negativepoint',
(1, -3): 'negativepoint'},
x - y: {
(-2, -1): 'negativepoint',
(-1, -2): 'positivepoint',
(-3, -2): 'negativepoint',
(-3, -1): 'negativepoint',
(1, -3): 'positivepoint'},
x + y - 3: {
(-2, -1): 'negativepoint',
(-1, -2): 'negativepoint',
(-3, -2): 'negativepoint',
(-3, -1): 'negativepoint',
(1, -3): 'negativepoint'},
x + y - 0.5: {
(-2, -1): 'negativepoint',
(-1, -2): 'negativepoint',
(-3, -2): 'negativepoint',
(-3, -1): 'negativepoint',
(1, -3): 'negativepoint'}}
</code></pre>