Python如何在遇到:分隔符前逐字符拆分,后续内容按分隔符拆分
实现方案
以Python为例,实现逻辑非常简单,只需要拆分前后两段分别处理再合并即可:
完整代码
a = "12356789:10:51:52:53" # 找到第一个冒号的位置 first_colon_pos = a.find(':') # 前半段逐字符拆分 prefix = list(a[:first_colon_pos]) # 后半段按冒号拆分 suffix = a[first_colon_pos+1:].split(':') # 合并得到结果 result = prefix + suffix print(result)
代码说明
a.find(':')会匹配字符串中第一个出现的冒号,返回对应的索引下标,如果字符串不存在冒号会返回-1,你可以根据实际场景补充异常判断逻辑,比如无冒号时直接返回逐字符拆分的结果。- 字符串直接用
list()转换时,默认会把每个单个字符拆为列表的独立元素,刚好匹配前半段的处理要求。 - 后半段从第一个冒号的下一位开始切片,用
split(':')方法按分隔符拆分即可。
运行上述代码输出的结果和你需要的目标列表完全一致。
内容的提问来源于stack exchange,提问作者JailSeed
相关产品推荐
相关产品推荐

