Re: [Python] uso di str.format
Il giorno gio, 03/05/2018 alle 11.20 +0200, Massimiliano Rosi ha scritto: > Ciao a tutta la lista, > vi chiedo un consulto, sull'utilizzo di str.format, cioè: > > '{:.2f}'.format(55.6789) > ritorna: > '55.68' > > è possibile modificare a runtime quante cifre dopo la virgola > visualizzare? Ho tentato (sicuramente sbagliando), ad utilizzare > qualcosa del tipo: > > '{:g}'.format(55.6789, g=':.2f') > il cui risultato è: > 55.6789 Dovrai fare due chiamate credo: In [1]: '{{:.{}f}}'.format(5).format(55.6789) Out[1]: '55.67890' Pietro ___ Python mailing list Python@lists.python.it https://lists.python.it/mailman/listinfo/python
Re: [Python] uso di str.format
2018-05-03 12:24 GMT+02:00 Alessandro Dentella: > > Format specifiers can themselves contain replacement fields. For example, a > field whose field width is itself a parameter could be specified via: > > > In [3]: "{0:.{1}f}".format(3.14185, 2) > Out[3]: '3.14' > > > La frase è presa da qui: https://www.python.org/dev/peps/pep-3101/ > > sandro > *:-) > Grazie Sandro, avevop googlato per cercare la documentazione che tu hai linkato, ma non avevo trovato questo esempio. Ciao. M. ___ Python mailing list Python@lists.python.it https://lists.python.it/mailman/listinfo/python
Re: [Python] uso di str.format
Il 3 maggio 2018 12:21, Carlo Mironha scritto: '{0:.{1}f}'.format(55.6789, 2) > '55.68' '{0:.{1}f}'.format(55.6789, 3) > '55.679' '{0:.{1}f}'.format(55.6789, 4) > '55.6789' > ``` > > ㎝ Grazie Carlo, è proprio la soluzione che tentavo di raggiungere senza trovare il bandolo! Ciao. M. ___ Python mailing list Python@lists.python.it https://lists.python.it/mailman/listinfo/python
Re: [Python] uso di str.format
2018-05-03 11:20 GMT+02:00 Massimiliano Rosi: > Ciao a tutta la lista, > vi chiedo un consulto, sull'utilizzo di str.format, cioè: > > '{:.2f}'.format(55.6789) > ritorna: > '55.68' > > è possibile modificare a runtime quante cifre dopo la virgola > visualizzare? Ho tentato (sicuramente sbagliando), ad utilizzare > qualcosa del tipo: > > '{:g}'.format(55.6789, g=':.2f') > il cui risultato è: > 55.6789 > Se proprio vuoi farti del male prova cosi' o qualcosa di simile: >>> from math import pi >>> template = '{:.%df}' >>> [(template % i).format(pi) for i in range(5)] ['3', '3.1', '3.14', '3.142', '3.1416'] Se tieni a te stesso e a quelli che leggeranno il tuo codice in futuro prova cosi': >>> str(round(pi, 3)) '3.142' Ciao -- http://alepisa.blogspot.com Esalando Prassi ___ Python mailing list Python@lists.python.it https://lists.python.it/mailman/listinfo/python
Re: [Python] uso di str.format
On Thu, May 03, 2018 at 11:20:04AM +0200, Massimiliano Rosi wrote: > Ciao a tutta la lista, > vi chiedo un consulto, sull'utilizzo di str.format, cioè: > > '{:.2f}'.format(55.6789) > ritorna: > '55.68' > > è possibile modificare a runtime quante cifre dopo la virgola > visualizzare? Ho tentato (sicuramente sbagliando), ad utilizzare > qualcosa del tipo: > > '{:g}'.format(55.6789, g=':.2f') > il cui risultato è: > 55.6789 Format specifiers can themselves contain replacement fields. For example, a field whose field width is itself a parameter could be specified via: In [3]: "{0:.{1}f}".format(3.14185, 2) Out[3]: '3.14' La frase è presa da qui: https://www.python.org/dev/peps/pep-3101/ sandro *:-) -- Sandro Dentella *:-) http://trepalchi.itIl portale degli artisti http://www.reteisi.org Soluzioni libere per le scuole http://sqlkit.argolinux.orgSQLkit home page - PyGTK/python/sqlalchemy ___ Python mailing list Python@lists.python.it https://lists.python.it/mailman/listinfo/python
Re: [Python] uso di str.format
2018-05-03 12:08 GMT+02:00 Massimiliano Rosi: > come indicavo nella mail precedente, l'utilizzo classico di str.format > mi è chiaro, infatti riportavo l'esempio: > '{:.2f}'.format(55.6789) il cui output è '55.68' > > ma chiedevo se era possibile modificare il parametro di conversione a > runtime, durante l'esecuzione del programma, in modo da poter > convertire il float in base ad un valore diverso di volta in volta. > > Dal mio esempio: > '{:g}'.format(55.6789, g=':.2f') ``` >>> '{0:.{1}f}'.format(55.6789, 2) '55.68' >>> '{0:.{1}f}'.format(55.6789, 3) '55.679' >>> '{0:.{1}f}'.format(55.6789, 4) '55.6789' ``` ㎝ -- | THE -WARE LICENSE (Revision ㊷) | -- | wrote this mail. As long as you retain | this notice you can do whatever you want with this stuff. | If we meet some day, and you think this stuff is worth it, | you can buy me a in return. -- Carlo Miron ___ Python mailing list Python@lists.python.it https://lists.python.it/mailman/listinfo/python
Re: [Python] uso di str.format
> Se ho capito bene hai provato questo? '{:.2f}'.format(55.6789) > '55.68' '{:.3f}'.format(55.6789) > '55.679' '{:.4f}'.format(55.6789) > '55.6789' > > Ciao > Marcello Ciao Marcello, come indicavo nella mail precedente, l'utilizzo classico di str.format mi è chiaro, infatti riportavo l'esempio: '{:.2f}'.format(55.6789) il cui output è '55.68' ma chiedevo se era possibile modificare il parametro di conversione a runtime, durante l'esecuzione del programma, in modo da poter convertire il float in base ad un valore diverso di volta in volta. Dal mio esempio: '{:g}'.format(55.6789, g=':.2f') pensando al parametro g come ad un valore che può cambiare durante l'esecuzione. Grazie. Massimiliano ___ Python mailing list Python@lists.python.it https://lists.python.it/mailman/listinfo/python
Re: [Python] uso di str.format
Il giorno 3 maggio 2018 11:20, Massimiliano Rosi < massimiliano.r...@gmail.com> ha scritto: > Ciao a tutta la lista, > vi chiedo un consulto, sull'utilizzo di str.format, cioè: > > '{:.2f}'.format(55.6789) > ritorna: > '55.68' > > Se ho capito bene hai provato questo? >>> '{:.2f}'.format(55.6789) '55.68' >>> '{:.3f}'.format(55.6789) '55.679' >>> '{:.4f}'.format(55.6789) '55.6789' >>> Ciao Marcello ___ Python mailing list Python@lists.python.it https://lists.python.it/mailman/listinfo/python
[Python] uso di str.format
Ciao a tutta la lista, vi chiedo un consulto, sull'utilizzo di str.format, cioè: '{:.2f}'.format(55.6789) ritorna: '55.68' è possibile modificare a runtime quante cifre dopo la virgola visualizzare? Ho tentato (sicuramente sbagliando), ad utilizzare qualcosa del tipo: '{:g}'.format(55.6789, g=':.2f') il cui risultato è: 55.6789 Grazie in anticipo. M. ___ Python mailing list Python@lists.python.it https://lists.python.it/mailman/listinfo/python