首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >对于python的string.split函数,可以给出两个条件吗?

对于python的string.split函数,可以给出两个条件吗?
EN

Stack Overflow用户
提问于 2012-01-12 19:42:15
回答 1查看 3.6K关注 0票数 0

可能重复: Python:用多个分隔符拆分字符串

我有一个程序,在该程序中,我将按每一行解析一个文件,并将其分成两部分。在此之后,我将对行中的每个单词进行解析,并将其添加到列表中。

这里,mfcList1是文本文件中的一行列表。我正在解析行中的每个单词,它们要么用逗号隔开,要么用空格隔开。但这不太管用。

代码语言:javascript
复制
for lines in mfcList1:
        lines = lines.lstrip()
        if lines!='':
            p.append(string.split(lines,','or " "))
mfcList2 = reduce(lambda x,y:x+y,p)

print mfcList2

当我使用string.split时,它只处理那些以逗号结尾的元素,它忽略了我用拆分方法使用的运算符。我想把每一个字都切掉。它们要么以逗号结尾,要么以空格结尾。

就像。'enableEmergencySpare=1 useGlobalSparesForEmergency=1 useUnconfGoodForEmergency=1',

这一行存储为一个列表元素,当我试图使用拆分方法拆分它们时。

有谁能建议我能做些什么而不是使用或操作.谢谢..。

EN

Stack Overflow用户

回答已采纳

发布于 2012-01-12 19:46:59

您可以从split()模块中使用re

代码语言:javascript
复制
import re
...
p.extend(re.split('[ ,]', lines))

[ ,]是一个正则表达式,意思是“空格或逗号”。另外,假设p是一个列表,并且您想要向它添加所有的单词,那么您应该使用extend()而不是append(),后者添加了一个元素。

还请注意,如果文件中的一行包含命令,后面跟着空格(或其他逗号和空格序列),则列表p将包含相应数量的空字符串。

票数 1
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8841263

复制
相关文章

相似问题

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