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.
The counterpart to the @property decorator for setting the value of an attribute is _______.
- @attribute.setter
- @property.setter
- @value.setter
- @set.setter
The counterpart to the @property decorator for setting the value of an attribute is @attribute.setter. It allows you to define a method that sets the value of the corresponding attribute.
What keyword is used to define a function in Python?
- def
- define
- func
- function
In Python, the keyword used to define a function is 'def.' You start a function definition with 'def,' followed by the function name and its parameters.
You have a base class Vehicle and a derived class Car. The base class has a method start(). If you want to add additional functionalities to the start() method specifically for the Car class without affecting the base class, what should you do?
- Use method overloading to create a new start() method in the Car class
- Use method overriding to override the start() method in the Car class
- Use multiple inheritance to inherit from both Vehicle and Car classes and create a new start() method in the Car class
- Use the super() keyword to extend the start() method in the Car class
In this case, you should use method overriding in the Car class. By using the super() keyword, you can extend the functionality of the start() method specific to the Car class without modifying the base class (Vehicle) method. This approach follows the principle of object-oriented programming and avoids redundancy.
When writing nested if statements, each new condition should be indented under the ______ statement.
- elif
- else
- if
- while
When writing nested if statements in Python, each new condition should be indented under the 'if' statement to indicate it's a part of that condition's block.
Which of the following symbols is used to define a tuple in Python?
- ( )
- < >
- [ ]
- { }
In Python, tuples are defined using parentheses ( ). For example, my_tuple = (1, 2, 3) creates a tuple named my_tuple.
Which Python Enhancement Proposal (PEP) introduces the concept of "The Zen of Python"?
- PEP 20
- PEP 42
- PEP 64
- PEP 8
"The Zen of Python" is introduced in PEP 20. It encapsulates the guiding principles and philosophy of Python's design.
In Python, to create a private attribute in a class, you prefix the attribute name with _______.
- @private
- __private
- _private
- private:
In Python, a private attribute is created by prefixing the attribute name with a double underscore, like "__private".
Which Python feature allows functions to accept any number of keyword arguments?
- **args
- **arguments
- **kwargs
- *arguments
The feature in Python that allows functions to accept any number of keyword arguments is **kwargs. This is often used when you want to pass a variable number of keyword arguments to a function. The double asterisk ** before kwargs allows you to collect keyword arguments into a dictionary within the function.