<div dir="ltr"><div class="gmail_extra"><br><div class="gmail_quote">Il giorno 17 marzo 2014 23:29, enrico franchi <span dir="ltr"><<a href="mailto:enrico.franchi@gmail.com" target="_blank">enrico.franchi@gmail.com</a>></span> ha scritto:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><br><div class="gmail_quote">2014-03-17 21:57 GMT+00:00 Balan Victor <span dir="ltr"><<a href="mailto:balan.victor0@gmail.com" target="_blank">balan.victor0@gmail.com</a>></span>:<div class="">
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div>Conosco i rischi di eval e vorrei evitare di usarlo però non riesco a trovare nulla di altrettanto semplice e con le stesse potenzialità.</div>
<div></div></blockquote></div></div><br>La soluzione 'semplice' e' scrivere un piccolo parser per le espressioni che ti servono.</div><div class="gmail_extra">E' meno complicato di quello che sembra, e' molto robusto perche' hai il completo controllo e non hai rischi.</div>
<div class="gmail_extra"><br></div></div></blockquote><div>Ci avevo pensato però non ho trovato granché che mi aiutasse a fare qualche prova. Inoltre visto che l'utente, se ha bisogno, può definire oggetti di vario tipo per essere usati come value può anche definire una funzione check per l'oggetto e dentro la stringa da passare ad eval può scrivere "value.check()". Questo come lo gestisco nel parser? E come li passo value ? Questo è un caso estremo, però può accedere. I</div>
<div><br></div><div>n ogni caso mi accontento di farlo funzionare solo con int, float, bool, string e datetime però non so da dove cominciare.</div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr"><div class="gmail_extra"></div><div class="gmail_extra">Altrimenti Python viene con un po' di librerie per parsare python. Il problema e' che una completa sandbox e' (l'ultima volta che mi ero informato) essenzialmente impossibile per come funziona Python. Quindi hai comunque rischi.</div>
</div></blockquote><div>tipo pyparser? L'ho guardato ma la documentazione non mi sembra molto chiara e sembra che sia stato abbandonato ... </div><div><br></div></div><br></div></div>