简体   繁体   中英

Python - Create new list from a list by applying filter

I have a list below:

list = [NEW - FROM VOLUNTARY SECTOR,NEW - FROM PUBLIC SECTOR,
LEAVER - RESIGNED,LEAVER - RETIRED,NEW - FROM PRIVATE SECTOR,
SECONDEE PRIVATE SECTOR,SECONDEE VOLUNTARY SECTOR]

Is there a way to create a new list from above list which has all values except values starting with word 'NEW'. So my example output would look like:

sublist = [LEAVER - RESIGNED,LEAVER - RETIRED,
SECONDEE PRIVATE SECTOR,SECONDEE VOLUNTARY SECTOR]

I feel I should be able to loop over the list using

for x in list:
    if list(x)!="NEW*":
        sublist.append(x)

But can't get this to work

Try:

x = ['NEW - FROM VOLUNTARY SECTOR','NEW - FROM PUBLIC SECTOR','LEAVER - RESIGNED','LEAVER - RETIRED','NEW - FROM PRIVATE SECTOR','SECONDEE PRIVATE SECTOR','SECONDEE VOLUNTARY SECTOR']

y = [i for i in x if not i.startswith("NEW")]

print(y)

Output:

['LEAVER - RESIGNED', 'LEAVER - RETIRED', 'SECONDEE PRIVATE SECTOR', 'SECONDEE VOLUNTARY SECTOR']

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM