如何使用索引筛选列表

2024-10-02 06:28:11 发布

您现在位置:Python中文网/ 问答频道 /正文

ListA = ['Sehingga 30 Ogos 2021: Jumlah kes COVID-19 yang dilaporkan adalah 19,268 kes (1,725,357 kes).\nPecahan setiap negeri (Kumulatif):\nSelangor - 3,567 (599,624)\nWPKL - 672 (172,236)\nSabah - 2,310 (145,249)\nJohor - 2,265 (136,488)\nSarawak - 2,028 (114,273)\nKedah - 2,084 (97,100)\nNegeri Sembilan - 269 (91,261)\nPulau Pinang - 1,780 (84,759)\nKelantan - 1,308 (76,047)\nPerak - 1,144 (66,889)\nMelaka - 395 (48,141)\nPahang - 788 (43,335)\nTerengganu - 544 (32,884)\nWP Labuan - 2 (9,808)\nWP Putrajaya - 41 (5,373)\nPerlis - 71 (1,890)\nREAD MORE...']

预期产出:

Sehingga 30 Ogos 2021: Jumlah kes COVID-19 yang dilaporkan adalah 19,268 kes (1,725,357 kes).

Pecahan setiap negeri (Kumulatif):

Selangor - 3,567 (599,624)
WPKL - 672 (172,236)
Sabah - 2,310 (145,249)
Johor - 2,265 (136,488)
Sarawak - 2,028 (114,273)
Kedah - 2,084 (97,100)
Negeri Sembilan - 269 (91,261)
Pulau Pinang - 1,780 (84,759)
Kelantan - 1,308 (76,047)
Perak - 1,144 (66,889)
Melaka - 395 (48,141)
Pahang - 788 (43,335)
Terengganu - 544 (32,884)
WP Labuan - 2 (9,808)
WP Putrajaya - 41 (5,373)
Perlis - 71 (1,890)

每个州都有自己的索引,例如:

index[0] = Selangor - 3,567 (599,624)
index[1] = WPKL - 672 (172,236)
index[2] = Sabah - 2,310 (145,249)
and so on..

我尝试使用正则表达式函数:

out = []
for v in listView:
    regex_list = re.findall(r"^(.*?\(.*?\))\n", v.replace('.\n\n', '\n').replace('.', ':'), flags=re.M)
    for g in regex_list:
        out.append(g.split(":")[0])

但有些索引并不准确,例如:当我调用index[2]时,它不能返回我Sabah - 2,310 (145,249),而是返回我Johor - 2,265 (136,488)


Tags: indexyangcoviddilaporkansehingganegerijumlahogos
1条回答
网友
1楼 · 发布于 2024-10-02 06:28:11

我想下面就是你要找的

data = 'Sehingga 30 Ogos 2021: Jumlah kes COVID-19 yang dilaporkan adalah 19,268 kes (1,725,357 kes).\nPecahan setiap negeri (Kumulatif):\nSelangor - 3,567 (599,624)\nWPKL - 672 (172,236)\nSabah - 2,310 (145,249)\nJohor - 2,265 (136,488)\nSarawak - 2,028 (114,273)\nKedah - 2,084 (97,100)\nNegeri Sembilan - 269 (91,261)\nPulau Pinang - 1,780 (84,759)\nKelantan - 1,308 (76,047)\nPerak - 1,144 (66,889)\nMelaka - 395 (48,141)\nPahang - 788 (43,335)\nTerengganu - 544 (32,884)\nWP Labuan - 2 (9,808)\nWP Putrajaya - 41 (5,373)\nPerlis - 71 (1,890)\nREAD MORE...'
items = data.split('\n')
for item in items:
    print(item)

输出

Sehingga 30 Ogos 2021: Jumlah kes COVID-19 yang dilaporkan adalah 19,268 kes (1,725,357 kes).
Pecahan setiap negeri (Kumulatif):
Selangor - 3,567 (599,624)
WPKL - 672 (172,236)
Sabah - 2,310 (145,249)
Johor - 2,265 (136,488)
Sarawak - 2,028 (114,273)
Kedah - 2,084 (97,100)
Negeri Sembilan - 269 (91,261)
Pulau Pinang - 1,780 (84,759)
Kelantan - 1,308 (76,047)
Perak - 1,144 (66,889)
Melaka - 395 (48,141)
Pahang - 788 (43,335)
Terengganu - 544 (32,884)
WP Labuan - 2 (9,808)
WP Putrajaya - 41 (5,373)
Perlis - 71 (1,890)
READ MORE...

相关问题 更多 >

    热门问题