2

我有一个包含数千行的文本文件。我想做的是删除'|'的第一次出现 在一行中,所有在后面的那一行中。我对python很陌生,不确定如何去做。re.search 浮现在脑海,但我不知道如何只删除一行的一部分。

4

1 回答 1

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

相关文档:

于 2013-03-18T00:43:27.220 回答