FAQ: Code Challenge: Control Flow - Always False


#1

This community-built FAQ covers the “Always False” exercise from the lesson “Code Challenge: Control Flow”.

Paths and Courses
This exercise can be found in the following Codecademy content:

Computer Science
Data Science

FAQs on the exercise Always False

Join the Discussion. Help a fellow learner on their journey.

Ask or answer a question about this exercise by clicking reply (reply) below!

Agree with a comment or answer? Like (like) to up-vote the contribution!

Need broader help or resources? Head here.

Looking for motivation to keep learning? Join our wider discussions.

Learn more about how to use this guide.

Found a bug? Report it!

Have a question about your account or billing? Reach out to our customer support team!

None of the above? Find out where to ask other questions here!


#2

Another way to solve this exercise apart:

def always_false(num):
if (num > 0 or num < 1):
return False


#4

I just did

def always_false(num):
return False

lazy, succinct, or bad instructions? :stuck_out_tongue:


#5

the instructions cover this:

An if statement that is always false is called a contradiction. You will rarely want to do this while programming, but it is important to realize it is possible to do this.

Your code speaks volumes why you rarely see an always false if statement.


#6

I did this and it worked :slight_smile:

def always_false(num):
if num == num:
return False


#7

If we’re going to have a function that takes a parameter, then it follows we will at least evaluate that parameter and return the outcome.

return num and not num

is itself a contradiction, only reinforcing the triviality of this exercise, while also demonstrating the relevance.


#8

I did
def always_false(num):
if num > num:
return True
elif num < num:
return True
else:
return False

Experianced people, what do you think about it?


#9

I did

def always_false(num):
  return False

Then I figured, well that’s a bit lazy. So then I did:

def always_false(num):
if num>num: return True
elif num<num: return True
else: return False

#10

Did you learn anything about logic from this experiment?

Would you conclude that with,

def always_false(num):
    return num and not num;

?

Mind,

>>> num = []
>>> always_false(num)
[]
>>> def always_false(num):
    return not not num and (num and not num)

>>> always_false(num)
False
>>> 

weirdness explored…

>>> def always_false(num):
    return not not num and num

>>> always_false(num)
False
>>> always_false([])
False
>>> always_false(())
False
>>> always_false({})
False
>>> always_false(1)
1
>>> 

#11
> def always_false (num) : 
>     if num <= num + 1  :
>         return False

#12

Will that not always be True?

Consider,

>>> def always_false(num):
    return not not num and not num

>>> always_false(1)
False
>>> 

This will always be False for any number we pass in. It ANDs two opposites so will never be True.