首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >将一行分成多行,但使用python重复名称

将一行分成多行,但使用python重复名称
EN

Stack Overflow用户
提问于 2018-06-28 05:21:16
回答 1查看 36关注 0票数 0

我有一个输入文件(固定宽度格式)文本文件如下:

代码语言:javascript
复制
id1|col2|col3|...|timestamp1,timestamp2,timestamp3,timestamp4,timestamp5  
id2|col2|col3|...|timestamp1,timestamp2  
id3|col2|col3|...|timestamp1  
...  

ID具有不同数量的时间戳。期望的输出应该是这样的:每个id都应该有一个时间戳,第二个时间戳应该在不同的行上,前面有相同的id。

代码语言:javascript
复制
id1|col2|col3|...|timestamp1  
id1|col2|col3|...|timestamp2  
id1|col2|col3|...|timestamp3  
id1|col2|col3|...|timestamp4    
id1|col2|col3|...|timestamp5    
id2|col2|col3|...|timestamp1  
id2|col2|col3|...|timestamp2  
id3|col2|col3|...|timestamp1  

我试着用sql读取它,但它有点单调乏味。我想看看在Python或unix中是否有答案。非常感谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-06-28 06:18:28

您可以使用split('|')使用|分隔符来剪切行,然后使用split(',')将最后一个字段剪切成时间戳列表

代码语言:javascript
复制
with open('/path/to/file', 'r') as f:  
    for line in f:
        fields = line.split('|')
        timestamps = fields[-1].split(',')
        for timestamp in timestamps:
            print('|'.join(fields[:-1]+[timestamp]))
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51071600

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档