can you have a function in a function python code example
Example 1: python functions
def chess_piece(piece_name, piece_value, piece_rank):
"""Info about a chess piece."""
print(f"\nThis chess piece is called the {piece_name}.")
print(f"It has an approximate value of {piece_value} points.")
print(f"In other words, this piece is the {piece_rank} valuable piece.")
chess_piece('pawn', '1', 'least')
chess_piece('knight', '3', 'second to last most')
chess_piece('bishop', '3', 'third to last most')
chess_piece('rook', '5', 'third most')
chess_piece('queen', '9', 'second most')
chess_piece('king', 'infinite', 'most')
Example 2: python functions
# Python Functions
def a_function(): #def FUNCTIONNAMEHERE(): Function content
print("Hello World!")
return 0
def answerValid(prompt, correct_answers, invalid): # Functions can also have parameters, or variables that can be used only in tha function
while True:
user = input(prompt)
if user in correct_answers:
break
return user # Example Function
else:
print(invalid)
a_function() # To call a function; Prints 'Hello World!'
# But if this is done:
function_called = a_function() # function_called would contain a 0, because the function returns 0
answer = answerValid("What is 8 * 8?", [64], "Invalid Option")
print(answer) # Prints 64, because that is the only possible answer
Example 3: python define a function within a function
def print_msg(msg): # This is the outer enclosing function
def printer():# This is the nested function
print(msg)
return printer # this got changed
# Now let's try calling this function.
# Output: Hello
another = print_msg("Hello")
another()
Example 4: nested functions in python
def print_msg(msg):
# This is the outer enclosing function
def printer():
# This is the nested function
print(msg)
return printer # returns the nested function
# Now let's try calling this function.
# Output: Hello
another = print_msg("Hello")
another()