Проблема в том, что 2N нуля также равно нулю, поэтому он должен быть в списке только один раз, чтобы функция вернула true.
Вы должны сделать специальную проверку для этого крайнего случая. Просто убедитесь, что у вас есть как минимум два нуля, чтобы считать, что оба 0 и 2 * 0 (N и 2 * N) находятся в списке как отдельные элементы.
например:
def has2N(a):
return any(N for N in a if 2*N in a) or a.count(0) > 1