列表理解,避免创建多个循环

时间:2018-11-22 07:14:22

标签: python-3.x list-comprehension

是否可以避免创建多个循环来填充下面的代码中列出的“ c”,而是缩短代码的长度? (也许通过列表理解或其他方式)

n,m = input().split()
a = [input().split() for i in range(0,int(n))]
b = [input().split() for i in range(0,int(m))]
c = []
for i in b:
    if i in a:
        c.append(list((y+1) for y, e in enumerate(a) if e == i))
else:c.append([-1])
for i in c:
    print(*i)

样本输入->(“ 5 2”,然后是分隔的行) 5 2 一种 一种 b 一种 b 一种 b

1 个答案:

答案 0 :(得分:0)

更短的代码,但我不确定它更容易理解。无论如何,它就在这里:

SELECT *
FROM `registration`
INNER JOIN `draft_registration` ON `registration`.`user_id`= `draft_registration`.`user_id`
WHERE `registration`.`user_id` = '20181121064044'