Saturday, 10 January 2026

Python Coding challenge - Day 957| What is the output of the following Python Code?

 


Code Explanation:

1. Defining the Class
class Safe:

A class named Safe is defined.

2. Overriding __getattribute__
    def __getattribute__(self, name):
        if name == "open":
            return super().__getattribute__(name)
        return "blocked"

__getattribute__ is called for every attribute access on an instance.

It receives:

self → the instance

name → the name of the attribute being accessed

Logic:

If the attribute name is "open", delegate to Python’s normal lookup using super().__getattribute__.

For any other attribute, return the string "blocked" instead of the real value.

So:

s.open → real method

s.x, s.anything_else → "blocked"

3. Defining the open Method
    def open(self):
        return "ok"

A normal instance method that returns "ok".

4. Creating an Object
s = Safe()

Creates an instance of Safe.

5. Accessing Attributes
print(s.open(), s.x)

Let’s evaluate each part:

▶ s.open()

s.open triggers __getattribute__(s, "open").

Since name == "open", it calls super().__getattribute__("open").

That returns the actual method open.

() calls it → returns "ok".

▶ s.x

s.x triggers __getattribute__(s, "x").

"x" ≠ "open", so it returns "blocked".

No error is raised.

6. Final Output
ok blocked

Final Answer
✔ Output:
ok blocked

0 Comments:

Post a Comment

Popular Posts

Categories

100 Python Programs for Beginner (118) AI (178) Android (25) AngularJS (1) Api (7) Assembly Language (2) aws (27) Azure (8) BI (10) Books (261) Bootcamp (1) C (78) C# (12) C++ (83) Course (84) Coursera (299) Cybersecurity (28) Data Analysis (24) Data Analytics (16) data management (15) Data Science (239) Data Strucures (15) Deep Learning (96) Django (16) Downloads (3) edx (21) Engineering (15) Euron (30) Events (7) Excel (18) Finance (9) flask (3) flutter (1) FPL (17) Generative AI (51) Git (9) Google (47) Hadoop (3) HTML Quiz (1) HTML&CSS (48) IBM (41) IoT (3) IS (25) Java (99) Leet Code (4) Machine Learning (215) Meta (24) MICHIGAN (5) microsoft (9) Nvidia (8) Pandas (12) PHP (20) Projects (32) Python (1238) Python Coding Challenge (955) Python Mistakes (24) Python Quiz (390) Python Tips (5) Questions (3) R (72) React (7) Scripting (3) security (4) Selenium Webdriver (4) Software (19) SQL (45) Udemy (17) UX Research (1) web application (11) Web development (8) web scraping (3)

Followers

Python Coding for Kids ( Free Demo for Everyone)