在 Python 中,转换此结构的最优雅方式是什么:
['group1, group2, group3']
进入这个结构:
['group1', 'group2', 'group3']
并可能回来。
需要的是一个函数,它可以采用逗号分隔值的字符串列表(第一种情况)或相同值的字符串列表(第二种情况),并将它们作为一个和相同的:字符串列表处理。
在伪代码中:
x = ['group1, group2, group3']
y = ['group1', 'group2', 'group3']
f(x) <==> f(y) <- equivalent behavior
此外,如果split()按照建议使用:
有没有一种方法,使分隔空间不敏感或有条件或正则表达式:我想获得的['group1', 'group2', 'group3']结果在任一['group1, group2, group3']或者['group1,group2,group3']甚至该['group1, group2,group3']为输入(或它们的组合)?
再澄清一点:
>>> single_string = False
>>> a = ['group1', 'group2', 'group3','group4']
>>> [t.strip() for t in [a][0].split(',')] if single_string else a
['group1', 'group2', 'group3', 'group4']
>>> single_string = True
>>> b = ['group1,group2, group3, group4']
>>> [t.strip() for t in [b][0].split(',')] if single_string else b
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'list' object has no attribute 'split'
>>>
基本上,我正在寻找最优雅的 Python 条件表达式,它会在以下情况a和b以上情况下产生相同的输出:['group1', 'group2', 'group3', 'group4'].
凤凰求蛊
汪汪一只猫
UYOU
相关分类