Python was named after the British comedy show "Monty Python's _______ Circus".

  • Comedy
  • Flying
  • Hilarious
  • Silly
Python was named after the British comedy show "Monty Python's Silly Circus." The creators found inspiration in the show's humor and absurdity.

In which block do you write the code that might raise an exception?

  • except
  • finally
  • raise
  • try
You write the code that might raise an exception in the try block in Python. The try block contains the code that you want to monitor for exceptions. If an exception occurs, it is caught by the except block.

In Python, every function returns a value. If no return statement is present, it returns _______ by default.

  • 0
  • FALSE
  • None
  • TRUE
In Python, if no return statement is present in a function, it returns 'None' by default. 'None' is a special value representing the absence of a value.

The concept where the inner function captures and remembers the enclosing function's local state is called _______.

  • Abstraction
  • Closure
  • Encapsulation
  • Inheritance
The concept where the inner function captures and remembers the enclosing function's local state is called a Closure. Closures are used in Python to create functions with behavior that depends on the variables in the enclosing function.

Which of the following is not a valid list comprehension?

  • [x for x in range(10)]
  • [(x, x**2) for x in y]
  • [x if x % 2 == 0 else 'odd' for x in range(10)]
  • [x if x > 5 else for x in range(10)]
The fourth option is not a valid list comprehension because it's missing the expression that should follow the else keyword. In list comprehensions, the else part should have an expression to be evaluated when the condition is False. The correct form should be like: [x if x > 5 else for x in range(10)].

When you want a variable to be available both inside and outside a function, you declare it as a _______ variable.

  • Global
  • Instance
  • Local
  • Non-local
To make a variable accessible both inside and outside a function, you declare it as a 'global' variable. It has a global scope.

While iterating through data entries, you want to avoid processing entries labeled as 'SKIP.' Instead of terminating the loop upon encountering such entries, what should you use to continue to the next entry?

  • break
  • continue
  • pass
  • return
To continue to the next entry without terminating the loop, you should use the continue statement. It skips the current iteration and moves on to the next one in the loop, allowing you to bypass processing entries labeled as 'SKIP' and continue with the rest of the loop.

How can you emulate a do-while loop, given that Python does not have a built-in do-while construct?

  • Use a for loop with a conditional statement that controls the loop's execution.
  • Use a repeat loop construct.
  • Use a while loop with a conditional statement that checks the loop's termination condition at the beginning of the loop body.
  • Use a while loop with a conditional statement that checks the loop's termination condition at the end of the loop body.
To emulate a do-while loop in Python, you can use a while loop with a conditional statement that checks the loop's termination condition at the end of the loop body. This ensures that the loop body is executed at least once before checking the condition, similar to the behavior of a do-while loop in other languages.

How can you access the last element of a list named my_list?

  • my_list.last()
  • my_list[-1]
  • my_list[0]
  • my_list[len(my_list) - 1]
You can access the last element of a list in Python by using negative indexing, as in "my_list[-1]". Negative indices count from the end, with -1 being the last element.

You have a dictionary of student names and their scores. How would you get a list of student names sorted by their scores in descending order?

  • sorted_names = sorted(students.items(), key=lambda x: x[1])
  • sorted_names = sorted(students.items(), key=lambda x: x[1], reverse=True)
  • sorted_names = students.items().sort(key=lambda x: x[1])
  • sorted_names = students.items().sort(key=lambda x: x[1], reverse=True)
The correct way to sort the dictionary by scores in descending order is to use the sorted() function with a lambda function as the key argument. The lambda function extracts the score (value) from each (key, value) pair and sorts the items accordingly.