簡體   English   中英

從列表元素中刪除數字

[英]Removing digits from list elements

我有一個以這種方式格式化的職位名單(總共12,000):
Career_List = ['1) ABLE SEAMAN', '2) ABRASIVE GRADER', '3) ABRASIVE GRINDER']

如何從列表元素中刪除數字,括號和空格,以便最終得到此輸出:
Career_List_Updated = ['ABLE SEAMAN', 'ABRASIVE GRADER', 'ABRASIVE GRINDER']

我知道我無法簡單地刪除前三個字符,因為我的列表中有十個以上的項目。

利用str.lstrip()和其余strip函數接受多個字符作為參數的事實。

Career_List_Updated =[career.lstrip('0123456789) ') for career in Career_List]

在第一個空間分開每個職業; 保持其余部分。

Career_List = ['1) ABLE SEAMAN', '2) ABRASIVE GRADER', '3) ABRASIVE GRINDER', '12000) ZEBRA CLEANER']
Career_List_Updated = []

for career in Career_List:
    job = career.split(' ', 1)
    Career_List_Updated.append(job[1])

print Career_List_Updated

輸出:

['ABLE SEAMAN', 'ABRASIVE GRADER', 'ABRASIVE GRINDER', 'ZEBRA CLEANER']

單行版:

Career_List_Updated = [career.split(' ', 1)[1] \
                       for career in Career_List]

我們想找到STOPS是一個壞字符的第一個索引,並返回字符串的其余部分,如下所示。

def strip_bad_starting_characters_from_string(string):
    bad_chars = set(r"'0123456789 )") # set of characters we don't like
    for i, char in enumerate(string):
        if char not in bad_chars
            # we are at first index past "noise" digits
            return string[i:]

career_list_updated = [strip_bad_starting_characters_from_string(string) for string in career_list]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM