如何根据列表中的内容将列表分为2?

2024-10-03 02:33:45 发布

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

所以我得到了这份名单

list = ["m2010","n1950","m1834","n993","m1490"]

我想让代码将列表分成2部分,应该是这样的:

n_list = ["n1950","n993"]

m_list = ["m2010","m1834","m1490"]

所有以“n”开头的词都在n_list中,而以“m”开头的词都在m_list中,但我太笨了,不能自己做


Tags: 代码列表list名单m1834m2010n1950m1490
3条回答

你可以做的一件事是制作一本字典,其中的关键字是单词的第一个字母

list = ["m2010","n1950","m1834","n993","m1490"]

def split(x):
    d = dict()
    for word in x:
       first = word[0]
       if first in d.keys():
            d[first].append(word)
       else:
            d[first] = [word]
    return d

split_lists = split(list)
print(split_lists['m'])
print(split_lists['n'])
list = ["m2010", "n1950", "m1834", "n993", "m1490"]

n_list = [item for item in list if item[0] == 'n']
m_list = [item for item in list if item[0] == 'm']
list = ["m2010","n1950","m1834","n993","m1490"]
n_list = []
m_list = []

for i in list:
    if i[:1]=='m':
        m_list.append(i)
    elif i[:1]=='n':
        n_list.append(i)
print(m_list)
print(n_list)

相关问题 更多 >