如何在__是定界符的地方拆分此字符串

MATCHES__STRING


要获取['MATCHES', 'STRING']的输出?

评论

docs.python.org/library/stdtypes.html#str.split

值得阅读python标准文档,并尝试了解其他人为掌握Python基础而编写的一些程序。练习和复制/修改是学习语言的绝佳工具。

#1 楼

您可以使用str.split函数:string.split('__')

>>> "MATCHES__STRING".split("__")
['MATCHES', 'STRING']


评论


我想知道,第一个示例(仅使用split())和第二个示例(带有for循环)之间有什么区别?

– EndenDragon
16年6月26日在18:21

@EndenDragon for循环将自动应用x.strip()并返回两边都没有空格的匹配项列表。细节决定成败。

–SébastienVercammen
16-6-29在13:59



嘿,因为这是一个非常受欢迎的问题,所以我将其编辑为仅询问一个特定问题,并删除了定界符周围带有空格的部分,因为尚不清楚OP预期会发生什么(因为在该问题中从来没有问题问题)。我认为问题(和答案)以这种方式更有用,但是如果您不同意,可以随时回滚所有编辑。

–阿兰·费
18-10-9在14:55

#2 楼

您可能对csv模块感兴趣,该模块是为逗号分隔的文件设计的,但可以轻松修改以使用自定义定界符。

import csv
csv.register_dialect( "myDialect", delimiter = "__", <other-options> )
lines = [ "MATCHES__STRING" ]

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


#3 楼

如果字符串中有两个或更多(在下面的示例中有三个)元素,则可以使用逗号分隔以下各项:

date, time, event_name = ev.get_text(separator='@').split("@")


之后在代码行中,三个变量将具有变量ev的三个部分的值

因此,如果变量ev包含此字符串,并且我们应用分隔符'@':

Sa.,23日,März@ 19:00 @ Klavier + Orchester:SPEZIAL

然后,在拆分操作后,变量



date将具有值“ Sa.,23.März”

时间将具有值“ 19:00”
event_name的值将具有“ Klavier + Orchester:SPEZIAL”