I'm struggling to understand what and why


#1

So I was able to understand Unit 14: I've got 99 problems... in Chapter 5: Conditionals and Control Flow. My code for the activity is below:

def greater_less_equal_5(answer):
if answer > 5:
return 1
elif answer < 5:
return -1
else:
return 0

print greater_less_equal_5(4)
print greater_less_equal_5(5)
print greater_less_equal_5(6)

So I've defined a variable greater_less_equal(), where the output will vary based on what the answer is. By the way, what is the thing inside the () called? Is (answer) part of the variable greater_less_equal or what?

I'm super stuck with Activity 15: The Big If. This is the base code they give you:

Make sure that the_flying_circus() returns True

def the_flying_circus():
if ________: # Start coding here!
# Don't forget to indent
# the code inside this block!
elif ________:
# Keep going here.
# You'll want to add the else statement, too!

I tried modeling this after activity 14 so I started with
def the_flying_circus(answer):

It doesn't work with answer inside the (). So then I tried

if the_flying_circus > 0 and a bunch of different comparators but it doesn't like it either. What is my variable here? Why is it telling me to print right away instead of return and then print at the end? I tried looking this up but I still didn't understand what to do. Can someone please post the solution and then break it down and explain what is going on here? I thought I understood the chapter but I guess not!


#2

@bevlee12,

the FUNCTION talk

def myFunc( param1, param2):
    # Begin of =myFunc= FUNCTION-BODY
    # this =myFunc= function- has 2 PARAMETERS param1 and param2
    # param1 and param2 PARAMETERS are used 
    # as -local- VARIABLES throughout the =myFunc= FUNCTION-BODY
    print( param1 + " and " + param2 )
    #End of =myFunc= FUNCTION-BODY

If you want to call/execute the myFunc function
you will have to add a pair of parentheses to myFunc
like
myFunc()
As the myFunc function was defined
as having 2 parameters
you have to provide 2 arguments
in our case 2 string VALUES "Alena" and "Lauren"
like
myFunc("Alena","Lauren")

some quotes from the outer-world:

**argument is the value/variable/reference being passed in,
parameter is the receiving variable used within the function/block**

OR

**"parameters" are called "formal parameters",
while "arguments" are called "actual parameters".**

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
++++ function with 1 parameter using return-statement

def myFunction( param1 ):
    # //Begin of =myFunction= FUNCTION-BODY
    # //=myFunction= function has 1 PARAMETER param1
    # //this param1 PARAMETER is used as a -local- VARIABLE
    # //throughout the =myFunction= FUNCTION-BODY
    return param1;
    # //End of FUNCTION-BODY

You have defined a myFunction function
which takes 1 parameter param1
this param1 parameter is used
as a variable throughout the =myFunction= FUNCTION-BODY.

If you want to call/execute this myFunction function
and this myFunction function was defined
as having 1 parameter param1
you will have to provide 1 argument
in our case a "number VALUE" 4
myFunction( 4 )

some quotes from the outer-world:

**argument is the value/variable/reference being passed in,
parameter is the receiving variable used within the function/block**

OR

**"parameters" are called "formal parameters",
while "arguments" are called "actual parameters".**

============================================

As you are using the return-statement in your myFunction function
you will only get a return-value no-display.
You can however capture this return-value in a variable
and then use the print-method to do a display.

theResult = myFunction( 4 )
print theResult

OR directly

print myFunction( 4 )