使用rsplit处理字符串后,如何将列表元素调整为指定格式?
字符串处理:实现指定分隔格式的方法
你当前的问题出在直接把|和&替换成了空字符串,导致27_D和27_B之间只剩空格,没法得到逗号分隔的效果。要达成目标,只需要把这些逻辑运算符替换成逗号,再做后续处理就行。
修正后的代码
import pandas as pd A='27_D | 27_B & 52_E' # 把|和&替换成逗号,保留原有空格 processed_str = A.replace('|', ',').replace('&', ',') # 从末尾按逗号拆分一次,得到两部分 split_result = processed_str.rsplit(',', 1) # 整理格式:去除各部分前后多余空格,前半部分末尾加空格匹配需求 final_result = [f"{part.strip()} " for part in split_result[:-1]] + [split_result[-1].strip()] print(final_result)
运行结果
['27_D, 27_B ', '52_E']
核心思路
- 替换运算符为逗号:不要直接删除
|和&,而是替换成你需要的逗号,这样就能在27_D和27_B之间保留分隔符。 - 精准拆分:用
rsplit(',', 1)从字符串末尾只拆分一次,刚好得到你要的两部分结构。 - 格式调整:
strip()用来清除每个部分前后的多余空格,再通过字符串格式化调整成你想要的最终样式。
内容的提问来源于stack exchange,提问作者Spearitch502
相关产品推荐
相关产品推荐

