Dataford
Interview QuestionsInterview GuidesExperiencesMock InterviewsPricing
Get started

Print Simple Object Structure

EasyPython00:00
Practice interviewer
In session
5 left
00:00

Your question is Print Simple Object Structure. Start with the requirements on the right.

Run and submit as often as you like. When you're ready, talk me through your approach or go straight to the code.

You need to log in / sign up to run or submit.

Problem

Tipalti configuration objects can contain nested sections such as supplier onboarding, payment settings, and approval rules. Implement a function that renders the hierarchy of a nested object using two spaces for each indentation level.

The input is a nested Python dictionary. Each dictionary key represents a structure node. A value that is another dictionary contains child nodes. An empty dictionary represents a leaf node. Keys must be printed in their original insertion order, and every node must appear on its own line.

Return the complete formatted structure as a single string. Do not print directly from the function.

Formal Specification

  • Input: obj, a nested dictionary whose values are either dictionaries or None.
  • Output: A string containing one line per key, separated by newline characters.
  • Each key is preceded by two spaces multiplied by its nesting depth.
  • The root keys have depth 0.
  • A None value is a leaf and has no children.

Constraints

  • 1 <= number of nodes <= 10^4
  • Keys are non-empty strings
  • Values are either nested dictionaries or None
  • The nesting depth is at most 500
  • Dictionary insertion order defines sibling order

Function Signature

def print_structure(obj):
Your solutionPython 3
You need to log in / sign up to run or submit.
Run your code to see test output