在出现字符后删除行的其余部分

时间:2013-03-18 00:40:26

标签: python python-2.7

我有一个包含数千行的文本文件。我想要做的是删除第一次出现'|'在一行中以及随后的那一行。我对python很新,不知道怎么会这样。我想到了re.search,但我不确定如何只删除一行的一部分。

1 个答案:

答案 0 :(得分:3)

看看这个:

>>> s = 'abc|123|xyz'
>>> s
'abc|123|xyz'
>>> s.split('|', 1)[0]
'abc'

或者,您可以

>>> s[s.index('|')+1:]
'123|xyz'

看起来第二种方法稍快一点:

>>> from timeit import timeit as time
>>> time("s.split('|', 1)[0]", "s = 'abc|123|xyz'")
0.39399194717407227
>>> time("s[s.index('|')+1:]", "s = 'abc|123|xyz'")
0.2868010997772217

相关文档: