Python / Flask / HTML <plaintext>输出正在添加空格

时间:2016-11-15 19:16:22

标签: python html flask

所以我使用python flask将脚本的结果输出到网页上的纯文本。当我从CLI打印函数时,输出如下所示:

&#xA;&#xA;
  1&#xA; 2&#xA; 3&#xA; 4&#xA; 5&#xA ;  
&#xA;&#xA;

但是当它在网站上时,它看起来像这样:

&#xA;&#xA;
  1&#XA;&#XA; 2&#XA;&#XA; 3&#XA;&#XA; 4&#XA;&#XA; 5&#XA;  
&#XA;&# xA;

输出HTML文件如下所示:

&#xA;&#xA;
 &lt; plaintext&gt;&#xA; {%for reports in reports%}&#xA ; {{rows}}&#xA; {%endfor%}&#xA;  
&#xA;&#xA;

我真的不擅长HTML,但有没有办法删除添加的新行?

&#xA;

1 个答案:

答案 0 :(得分:1)

  1. <plaintext>已过时。请改用<pre>。请参阅:https://developer.mozilla.org/en-US/docs/Web/HTML/Element/plaintext

  2. 您使用的rows变量可能已包含换行符。如果您只想输出report中的每一行,则不需要使用for循环。试试这个:

    <pre>{{ ''.join(report) }}</pre>
    
  3. 考虑控制结构。您可以使用Jinja2的whitespace control功能来避免额外的空格(和换行符):

    <pre>
    {% for row in report -%}
        {{ row }}
    {%- endfor %}
    </pre>