[Python] problema con format string, convertire da nuova a vecchia

Pietro peter.zamb a gmail.com
Ven 6 Lug 2012 19:49:21 CEST


Grazie Alberto,

2012/7/6 Alberto Granzotto <agranzot a gmail.com>:
> č poco leggibile ma magari ti aiuta:
>
>>>> "%s - %s %s s" % ('RasterNumpy', 'add', ('%.6f' % 0.008465832344).rjust(40, '.'))
> 'RasterNumpy - add ................................0.008466 s'

purtroppo la stringa č da inserire in un template di jinja
<source lang="python">
from jinja2 import Template

TXT = u"""
{% for region in regions %}
{{ '#'*60 }}
### Benchmark cols = {{ region.cols }} rows = {{ region.rows}} cells =
{{ region.cells }}
{{ '#'*60 }}

    # equation: c = a + b
    {% for execmode, operation in region.results.iteritems() %}
        {{ "%-30s - %5s % 12.6fs"|format(execmode, 'add', operation.add.time) }}
    {%- endfor %}

    # equation: c = if a > 50 then 1 else 0
    {% for execmode, operation in region.results.iteritems() %}
        {{ "%-30s - %5s % 12.6fs"|format(execmode, 'if', operation.if.time) }}
    {%- endfor %}
{%- endfor %}
"""

def get_txt(results):
    txt = Template(TXT)
    return txt.render(regions = results)
</source>

Non credo di poter quindi utilizzare il tuo metodo, potrei al limite
crarmi la stringa prima, ed inserirla direttamente nel dizionario che
gli passo...

Ma alla fine i puntini non sono cosė importanti... :-)

Grazie a tutti per l'aiuto.
Buon fine settimana!

Pietro


Maggiori informazioni sulla lista Python