ЁЯУв Too many exams? DonтАЩt know which one suits you best? Book Your Free Expert ЁЯСЙ call Now!

  • google app store apple app store
  • тЬЦ

      Question

      Consider the following Python code snippet: class

      Employee: ┬а ┬а def __init__(self, name, age): ┬а ┬а ┬а ┬а self.name = name ┬а ┬а ┬а ┬а self.age = age ┬а ┬а def display(self): ┬а ┬а ┬а ┬а print(f"Name: {self.name}, Age: {self.age}") e1 = Employee("John", 30) e1.salary = 50000 e1.display() print(e1.salary) What will happen when the above code is executed?
      A It will print the name, age, and salary of the employee. Correct Answer Incorrect Answer
      B It will raise an AttributeError when accessing e1.salary. Correct Answer Incorrect Answer
      C It will print Name: John, Age: 30 and 50000 on separate lines. Correct Answer Incorrect Answer
      D It will execute but not print the salary attribute. Correct Answer Incorrect Answer
      E It will fail to execute due to missing method to initialize salary. Correct Answer Incorrect Answer

      Solution

      The code demonstrates Python's ability to dynamically add attributes to an instance of a class. 1. Instance Attributes: While name and age are initialized in the __init__ method, the salary attribute is added dynamically to the e1 instance after the object is created. Python allows this flexibility without any compile-time errors. 2. Output Explanation: When e1.display() is called, the display method prints name and age. Then, e1.salary is accessed and printed directly. 3. Execution Result: The code will output: Name: John, Age: 30┬а┬а 50000┬а┬а This behavior demonstrates Python's dynamic nature and object-oriented principles. Why Other Options Are Incorrect: тАв A) It will print the name, age, and salary of the employee: The display method does not include salary, so salary is not printed there. тАв B) It will raise an AttributeError when accessing e1.salary: Python allows adding attributes dynamically; no error occurs. тАв D) It will execute but not print the salary attribute: e1.salary is explicitly printed in the last line. тАв E) It will fail to execute due to missing method to initialize salary: There is no requirement for salary to be initialized in the __init__ method.

      Practice Next
      More Data Analytics Languages Questions
      ask-question