I have this python function:

```
def evaluate_corr_level(corr):

    corr_table= {
    eval("corr == 0"):"No correlation", 
    eval("corr > 0 and corr <= 0.3"):"Weak correlation", 
    eval("corr > 0.3 and corr <= 0.7"): "Moderate correlation",
    eval("corr > 0.7"): "Strong correlation",
    eval("corr < 0 and corr >= -0.3"): "Weak inverse correlation",
    eval("corr < 0.3 and corr >= -0.7"): "Moderate inverese correlation",
    eval("corr < -0.7"): "Strong inverse correlation"
    }

    for k, val in corr_table.items():
        print(k,val)

```

If I pass 0.5 as a parameter I get printed:

```
False Strong inverse correlation
True Moderate correlation

```

Which is not what I expected. What's wrong with the code?
I assume it's some string to float issue (not very familiar with eval())

Thanks!