python - 在 Python 中,如何删除特定字符周围的字符?
问题描述
我有一个如下所示的列表。在列表的每个项目中,单独的项目由分号分隔,但每个分号周围的空间量似乎是随机的:
['New Jersey ; 46.3% ; Republican ; 03/10/2015', 'Pennsylvania ;
39.0%; Democrat ;04/30/2012', 'Virginia . ;54.7% ;Independent
;10/25/10', 'Maryland;44.8% ; Democrat; 01/15/16', 'New York; R50.9%; Republican ; 09/22/15']
我希望最终输出是一个如下所示的列表:
['New Jersey;46.3%;Republican;03/10/2015', 'Pennsylvania;39.0%;Democrat;04/30/2012', 'Virginia;54.7%;Independent;10/25/10' ... ]
我一直在尝试.split()
,但这并没有放弃中间的字符。.replace()
对每个可能的空格和分号组合做一个我唯一的希望吗?
解决方案
这是一个简短的方法。这一行应该就够了。
s = ['New Jersey ; 46.3% ; Republican ; 03/10/2015', 'Pennsylvania ; 39.0%; Democrat ;04/30/2012', 'Virginia . ;54.7% ;Independent ;10/25/10', 'Maryland;44.8% ; Democrat; 01/15/16', 'New York; R50.9%; Republican ; 09/22/15']
new_list = [';'.join([word.strip() for word in item.split(';')]) for item in s]
这是扩展表格。
new_list = []
for item in s:
sub_list = [word.strip() for word in item.split(';')]
new_list.append(';'.join(sub_list))
print(new_list)
输出:
['New Jersey;46.3%;Republican;03/10/2015', 'Pennsylvania;39.0%;Democrat;04/30/2012', 'Virginia .;54.7%;Independent;10/25/10', 'Maryland;44.8%;Democrat;01/15/16', 'New York;R50.9%;Republican;09/22/15']
推荐阅读
- vaadin - 如何在不破坏按钮的情况下将新的 BrowserWindowOpener 附加到按钮?
- excel - 从一个工作簿复制到另一个工作簿
- rust - 你能为这个内部迭代器做一个外部迭代器接口吗?
- scala - RDD 持久化机制(当我持久化一个 RDD 然后使用 take(10) 而不是 count() 会发生什么)
- sql-server - 如何存储在 T-SQL 中返回多个值的选择结果?
- javascript - 如何强制调用 React.js 钩子的命令
- google-cloud-platform - 来自 Google Tag Manager 的用户数据摄取流程,用于 Recommendation AI Google 云平台
- algorithm - 面试题:股票利润最大化
- c++ - 为什么 _getch() 仍然等待输入而不是直接注册用户输入?
- c - 双击事件在 Tizen 可穿戴设备中不起作用?为什么?