Python面试题!

a = [['A','a1','a2','a3'],['B','b1','b2','b3','b4'],['C','c1','c2']]
b = [['xgdb','a1cb1','gjka1'],['ert','a1c1g']]

需求:
得出的结果 c = [[None,A,A],[None,A]]
这里做出判断,如果每个短句中包含a中的关键字,那么取出关键字对应的主题
如果每个短句中出现多个关键字,那么取出第一个关键字的主题,如果短句没有查到关键字,那么把主题赋值为None


a = [['A','a1','a2','a3'],['B','b1','b2','b3','b4'],['C','c1','c2']]
b = [['xgdb','a1cb1','gjka1'],['ert','a1c1g']]

new_list=[]
for l in b:
    tmp_list=[]
    for n in l:
        count = 'None'
        for x in a:
            for y in x:
                if y in n:
                    if count=='None':
                        count=y
                        tmp=x[0]
                    else:
                        count=tmp
                        break
        tmp_list.append(count)
    new_list.append(tmp_list)
print(new_list)

我觉得我写的没错,但是出不来你的结果,gjka1只能匹配到a1,匹配不到第二个值,这种情况应该赋值为a1,不应该为A

img