python - 如何根据 \n 拆分列表字符串
问题描述
我有一个这样的列表:
['Sehingga 8 Ogos 2021: Jumlah kes COVID-19 yang dilaporkan adalah 18,688 kes (1,262,540 kes)\n\nPecahan setiap negeri (Kumulatif):\n\nSelangor - 6,565 (465,015)\nWPKL - 1,883 (140,404)\nJohor - 1,308 (100,452)\nSabah -Lagi 1,379 (93,835)\nSarawak - 581 (81,328)\nNegeri Sembilan - 1,140 (78,777)\nKedah - 1,610 (56,598)\nPulau Pinang - 694 (52,368)\nKelantan - 870 (49,433)\nPerak - 861 (43,924)\nMelaka - 526 (35,584)\nPahang - 602 (29,125)\nTerengganu - 598 (20,696)\nWP Labuan - 2 (9,711)\nWP Putrajaya - 63 (4,478)\nPerlis - 6 (812)\n\n- KPK KKM']
如何根据 \n 的开始和结束位置获取某个单词。
预期输出:
1)Sehingga 8 Ogos 2021
2)Selangor - 6,565 (465,015)
3)WPKL - 1,883 (140,404)
4)Johor - 1,308 (100,452)
等等 ..
解决方案
您可以使用re
模块来完成任务:
import re
lst = [
"Sehingga 8 Ogos 2021: Jumlah kes COVID-19 yang dilaporkan adalah 18,688 kes (1,262,540 kes)\n\nPecahan setiap negeri (Kumulatif):\n\nSelangor - 6,565 (465,015)\nWPKL - 1,883 (140,404)\nJohor - 1,308 (100,452)\nSabah -Lagi 1,379 (93,835)\nSarawak - 581 (81,328)\nNegeri Sembilan - 1,140 (78,777)\nKedah - 1,610 (56,598)\nPulau Pinang - 694 (52,368)\nKelantan - 870 (49,433)\nPerak - 861 (43,924)\nMelaka - 526 (35,584)\nPahang - 602 (29,125)\nTerengganu - 598 (20,696)\nWP Labuan - 2 (9,711)\nWP Putrajaya - 63 (4,478)\nPerlis - 6 (812)\n\n- KPK KKM"
]
out = []
for v in lst:
for g in re.findall(r"^(.*?\(.*?\))\n", v, flags=re.M):
out.append(g.split(":")[0])
print(*out, sep="\n")
印刷:
Sehingga 8 Ogos 2021
Selangor - 6,565 (465,015)
WPKL - 1,883 (140,404)
Johor - 1,308 (100,452)
Sabah -Lagi 1,379 (93,835)
Sarawak - 581 (81,328)
Negeri Sembilan - 1,140 (78,777)
Kedah - 1,610 (56,598)
Pulau Pinang - 694 (52,368)
Kelantan - 870 (49,433)
Perak - 861 (43,924)
Melaka - 526 (35,584)
Pahang - 602 (29,125)
Terengganu - 598 (20,696)
WP Labuan - 2 (9,711)
WP Putrajaya - 63 (4,478)
Perlis - 6 (812)
推荐阅读
- python - 设置单个值时如何避免SettingWithCopyWarning?
- java - 返回列表
- >>
- amazon-web-services - 如何使用 boto (2.49.0) 库调用 AWS lambda 函数?
- python - NumPy,如何有效地进行涉及 ndarray 其他元素的元素操作(无循环)
- android - 偶尔会出现 NoActivityFound 异常
- sql - 为每种 ID 语言添加“CustomDescription”列的计算查询
- php - 在 Bootstrap 4 Carousel 的 WP_Query 中按自定义 Woocommerce 产品排序排序
- java - Berkeley DB JE JDB 文件不断增加
- oracle - Oracle DDL 触发器:如何检索有关事件发生的更多详细信息?
- java - 在缓慢的消费者 kafka 上处理背压并避免重新平衡