如何处理Transaction列表:将末尾带'-'的字符串的'-'移至开头?
解决方法:调整列表中带后缀负号的数值格式
这里有个简洁的Python方案来实现你想要的效果——把列表中以'-'结尾的字符串,将负号移到开头:
# 原始列表 Transaction = ['03/29/18', '16,545,275.32-', '8,309,931.13-', '24,855,206.45-', '2.18', '1,505.11'] # 处理逻辑:遍历每个元素,调整负号位置 Transaction = [ '-' + item[:-1] if item.endswith('-') else item for item in Transaction ] # 输出结果 print(Transaction)
运行这段代码后,你会得到预期的输出:
['03/29/18', '-16,545,275.32', '-8,309,931.13', '-24,855,206.45', '2.18', '1,505.11']
逻辑解释
- 用列表推导式高效遍历原列表的每个元素
- 对每个元素,用
item.endswith('-')判断是否以负号结尾 - 如果符合条件,就截取除最后一个负号外的所有内容(
item[:-1]),再在开头拼接负号 - 不符合条件的元素直接保留原样
这样处理既简洁又直观,能完美匹配你的需求~
内容的提问来源于stack exchange,提问作者user8162541
相关产品推荐
相关产品推荐

