Python 在空的新行上“拆分”

新手上路,请多包涵

尝试在“空”换行符而不是任何其他换行符上使用 python 拆分。我尝试了其他几个我发现的例子,但似乎都不起作用。

数据示例:

(*,224.0.0.0/4) RPF nbr:96.34.35.36 标志:C RPF P
  上:1w6d

(*,224.0.0.0/24) 标志:DP
  上:1w6d

(*,224.0.1.39) 标志:SP
  上:1w6d

(96.34.246.55,224.0.1.39) RPF nbr:96.34.35.36 标志:RPF
  上:1w5d
  传入接口列表
    Bundle-Ether434 标志:FA,向上:1w5d
  出接口列表
    BVI100 旗帜:F,向上:1w5d
    TenGigE0/0/0/3 标志:F,向上:1w5d
    TenGigE0/0/1/1 标志:F,向上:1w5d
    TenGigE0/0/1/2 标志:F,向上:1w5d
    TenGigE0/0/1/3 标志:F,向上:1w5d
    TenGigE0/1/1/1 标志:F,向上:1w5d
    TenGigE0/1/1/2 标志:F,向上:1w5d
    TenGigE0/2/1/0 标志:F,向上:1w5d
    TenGigE0/2/1/1 标志:F,向上:1w5d
    TenGigE0/2/1/2 标志:F,向上:1w5d
    Bundle-Ether234 (0/3/CPU0) 标志:F,向上:3d16h
    Bundle-Ether434 标志:FA,向上:1w5d

我想拆分任何在线换行且仅换行的内容。

示例代码如下:

 myarray = []
myarray = output.split("\n")
for line in myarray:
    print line
    print "Next Line"

我确实导入了“re”库。

原文由 DJ Otter 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 284
1 个回答

当您考虑空行中的内容时,这很容易。它只是换行符,所以在空行上拆分将按顺序拆分两个换行符(一个来自前一个非空行,一个是“整个”空行。

 myarray = output.split("\n\n")
for line in myarray:
    print line
    print "Next Line"

对于 Python 3:

 myarray = output.split("\n\n")
for line in myarray:
    print(line)
    print("Next Line")

如果您想与平台无关,请使用 os.linesep + os.linesep 而不是 "\n\n" ,如 Lost 的回答中所述。

原文由 Kiraa 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题