2010-08-13 133 views
104

如何分隔这个字符串,其中$$ TEXT $$是分隔符。在python中用分隔符分割一个字符串

1.MATCHES$$TEXT$$STRING 
    2.MATCHES $$TEXT$$ STRING 
+3

http://docs.python.org/library/stdtypes.html#str.split – getekha 2010-08-13 08:50:15

+6

值得一读Python标准的文件,并试图了解别人很少进行节目开始掌握的基础知识蟒蛇。练习和复制/修改是学习语言的很好工具。 – 2010-08-13 09:00:48

回答

175

string.split('$$TEXT$$')

>>> a="1.MATCHES$$TEXT$$STRING" 
>>> a.split("$$TEXT$$") 
['1.MATCHES', 'STRING'] 

>>> a="2.MATCHES $$TEXT$$ STRING" 
>>> a.split("$$TEXT$$") 
['2.MATCHES ', ' STRING'] 

和:

>>> [x.strip() for x in "2.MATCHES $$TEXT$$ STRING".split("$$TEXT$$")] 
['2.MATCHES', 'STRING'] 
+1

我想知道,第一个例子(简单地使用split())和第二个例子(使用for循环)之间有什么区别? – EndenDragon 2016-06-26 18:21:53

+4

@EndenDragon for循环会自动应用'x.strip()'并返回两侧没有空白的匹配列表。细节决定成败。 – 2016-06-29 13:59:59

4

您可能感兴趣的csv模块,这是专为逗号分隔的文件,但可以很容易地修改为使用自定义分隔符英寸

import csv 
csv.register_dialect("myDialect", delimiter = "$$TEXT", <other-options>) 
lines = [ "1.MATCHES$$TEXT$$STRING", "2.MATCHES $$TEXT$$ STRING" ] 

for row in csv.reader(lines): 
    ...