3 回答
TA贡献1853条经验 获得超9个赞
"2.7.0_bf4fda703454".split("_") 给出字符串列表:
In [1]: "2.7.0_bf4fda703454".split("_")
Out[1]: ['2.7.0', 'bf4fda703454']
这将在每个下划线处拆分字符串。如果希望它在第一次拆分后停止,请使用"2.7.0_bf4fda703454".split("_", 1)。
如果您知道字符串中包含下划线,那么您甚至可以将LHS和RHS解压缩为单独的变量:
In [8]: lhs, rhs = "2.7.0_bf4fda703454".split("_", 1)
In [9]: lhs
Out[9]: '2.7.0'
In [10]: rhs
Out[10]: 'bf4fda703454'
另一种方法是使用partition()。用法与上一个示例类似,不同之处在于它返回三个组件而不是两个。主要优点是,如果字符串不包含分隔符,则此方法不会失败。
TA贡献1805条经验 获得超9个赞
如果总是将LHS / RHS分开,则还可以使用partition字符串中内置的方法。它返回一个三元组,就(LHS, separator, RHS)好像找到了分隔符,(original_string, '', '')如果不存在分隔符:
>>> "2.7.0_bf4fda703454".partition('_')
('2.7.0', '_', 'bf4fda703454')
>>> "shazam".partition("_")
('shazam', '', '')
添加回答
举报