如何使用Python计算字符串中的“ \ n \ n”?

时间:2019-09-22 14:36:18

标签: python

这是我的字符串:(信息:我用Python将其从数组解析为带str(myString)的字符串):

myString = "[('das ist ein Test', 'Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam\norem ipsum dolor sit amet\n\norem ipsum dolor sit amet\n\norem ipsum dolor sit amet\n\norem ipsum dolor sit amet')]"

当我尝试:

print(myString.count("\n\n"))

我得到答案:0

但是应该是3。

1 个答案:

答案 0 :(得分:1)

当您使用str([…])将列表转换为字符串时,Python会使用repr()为列表的所有元素创建字符串表示形式。

这将导致列表中字符串中的所有特殊字符都被转义,例如\n(换行符)变成文字\n(反斜杠+'n')。

因此,在这种情况下,您需要检查\\n\\n或使用原始字符串:

print(myString.count("\\n\\n"))

print(myString.count(r"\n\n"))

或者,遍历列表中元组的每个元素,并对结果求和:

sum([stringItem.count('\n\n') for myTuple in myArray for stringItem in myTuple])