从列表元素中删除数字

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']

我知道我无法简单地删除前三个字符,因为我的列表中有十多个项目。

我们想要找到第一个停止为坏字符的索引和 return 字符串的其余部分,如下所示。

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]

在第一个开始拆分每个职业space;保留该行的其余部分。

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]

利用 str.lstrip() 和其他 strip 函数接受多个字符作为参数这一事实。

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