使用Python中的字符串时如何在html上换行

问题描述 投票:0回答:5

基本上我正在使用 python 构建一个聊天机器人。在 python 上运行时,我可以使用

\n
标签显示多行答案。但是,当我使用 Flask 将其转换为 HTML 以在网站上显示时,它无法呈现
\n
标签,因此没有换行符。

我也尝试将

\n
替换为
<br/>
但没有帮助。它打印出 br 标签,而不是将其转换为换行符。

请指导。

python html css line newline
5个回答
0
投票

在某些文本区域

<br/>
不会出现文字 您可以使用
&#10;
来断线 就像在 html 中使用
&nbsp;
来代表空格


0
投票

你可以尝试通过

&lt;br&gt;
这是转义的
<br>
标签链接


0
投票

尝试使用这些选项。 如果您的内容类型是 html,则使用

"String to be displayed"+"<br \>"+"The string to be displayed in new line"
否则,如果您的内容类型是纯文本,则使用
"String to be displayed"+"\n"+"The string to be displayed in new line"


0
投票

我也有同样的问题。尽管我的网站使用了 Django,但我认为逻辑和语法是相同的。

您可以通过变量并在 html 代码中添加“|safe”来完成此操作。

例如,在你的Python代码中你有:

broken_string = "first line<br>second line"

return render_template('index.html', html_broken_string = broken_string)

在你的 HTML 代码中你应该有:

{{ html_broken_string|safe }}

这应该可以完成工作。

P.S:我不记得你是否可以直接在 render_tamplate() 函数中传递字符串并省略在 Flask 中创建新变量,所以我没有写它。不过你可以试试。


0
投票

对我来说,使用Python 3.8.0,在我想要显示到html页面上的字符串中添加字符串

<br />
,然后在
utf-8
中编码最终字符串就可以了。看看下面的代码:

min_value = 1
max_value = 10
output_string = "min =" + min_value
output_string += "<br /> max =" + max_value

return output_string.encode('utf-8')

这将输出:

分钟=1
最大=10

© www.soinside.com 2019 - 2024. All rights reserved.