for i in range(l):
q = input()
if(q not in array_num):
print("NOT PRESENT")
else:
print(array_num.count(q))
我在下面写道,但不知道在哪里使用q = input()
[print("NOT PRESENT") if q not in array_num else print(array_num.count(q)) for i in range(l)]
答案 0 :(得分:2)
最好避免使用列表理解的副作用。请参见Is it Pythonic to use list comprehensions for just side effects?和Printing using list comprehension。就是说,为了好玩,使用Python3.8的walrus operator,您可以使用
[print("NOT PRESENT") if (q:=input()) not in array_num else print(array_num.count(q)) for i in range(l)]
其中表达式q:=input()
将导致将input()
的返回值分配给q
,并且表达式本身的值将变为{{1}的新值的值}。