首页 > 解决方案 > 观察到 N 个特殊字符后添加换行符

问题描述

我有一个要求,其中我有一个包含错误格式数据的 CSV 文件。但是,基于数字管道,我需要添加一个换行符并使数据准备好以供使用。

我们可以计算数字管道并添加换行符\n吗?

例子:

sadasd|asdasd|l||||0sds|sdsds|2||||0sdsd|asdasd|l||||0    

预期输出:

sadasd|asdasd|l||||0   
sds|sdsds|2||||0    
sdsd|asdasd|l||||0    .

标签: pythonpython-3.x

解决方案


像这样的东西?

_in = "sadasd|asdasd|l||||0sds|sdsds|2||||0sdsd|asdasd|l||||0"

_out = ""
pipeCount = 0
for char in _in:
    if pipeCount == 6:
        _out = _out+char+"\n"
        pipeCount = 0
    else:
        _out = _out+char
    if char == "|":
        pipeCount += 1

print(_out)

我不确定我是否理解添加换行符的标准(请参阅问题评论),但我的输出符合您的期望:

sadasd|asdasd|l||||0
sds|sdsds|2||||0
sdsd|asdasd|l||||0

输出仍然是一个字符串,但您可以轻松地将其设为字符串列表。


推荐阅读