如何使我的代码按此缩进以获得更好的可读性和易用性。
如何使我的代码按此缩进以获得更好的可读性和易用性。
JSON中是否可以有多行字符串?
这主要是为了视觉舒适度,所以我想我可以在我的编辑器中打开自动换行,但我还是有点好奇。
我正在使用JSON格式编写一些数据文件,并希望将一些非常长的字符串值分成多行。使用Python的JSON模块时,无论我使用 \\
还是 \\ n
作为转义字符,我都会遇到很多错误。
admin 更改状态以发布 2023年5月22日
不幸的是,这里的大多数答案仅回答了如何在字符串数据中添加换行符的问题。问题是如何通过跨越多行代码拆分字符串值来使代码看起来更美观。(即使是认识到这一点的答案,也提供了“解决方案”,假设人们可以自由更改数据表示,而在许多情况下,人们是不能的。)
更糟糕的消息是,没有很好的答案。
在许多编程语言中,即使它们不明确支持跨行拆分字符串,您仍然可以使用字符串连接来获得所需的效果; 只要编译器不糟糕,这就没问题。
但是JSON不是一种编程语言; 它只是一种数据表示。 您无法告诉它连接字符串。 而且,它的(相当小的)语法不包括任何表示跨多行的字符串的设施。
除了设计某种预处理器之外(而我个人不想有效地创造自己的语言来解决这个问题),没有一般解决方案。 如果您可以更改数据格式,则可以替换为字符串数组。 否则,这是JSON不为人类可读性设计的众多方式之一。
JSON 不允许真正的换行。您需要用 \n
替换所有换行符。
例如:
"first line second line"
可保存为:
"第一行\n第二行"
注意:
对于 Python
,应写成:
"第一行\\n第二行"
其中 \\
用于转义反斜杠,否则 Python 将把 \n
视为控制字符 "新行"