Q.Consider the following dictionary stateCapital:
stateCapital = {"AndhraPradesh":"Hyderabad", "Bihar":"Patna","Maharashtra":"Mumbai", "Rajasthan":"Jaipur"}
Find the output of the following statements:
i. print(stateCapital.get("Bihar"))
ii. print(stateCapital.keys())
iii. print(stateCapital.values())
iv. print(stateCapital.items())
v. print(len(stateCapital))
vi print("Maharashtra" in stateCapital)
vii. print(stateCapital.get("Assam"))
viii. del stateCapital["Rajasthan"]
print(stateCapital)
Dictionary access methods on stateCapital — the key facts: get() returns None (not an error) for a missing key, the in operator tests KEYS, and del removes a whole key:value pair.
The dictionary maps state → capital with four pairs. Trace each statement:
| # | Statement | How it evaluates | Output |
|---|---|---|---|
| i | print(stateCapital.get("Bihar")) | get() looks up the key "Bihar" and returns its value | Patna |
| ii | print(stateCapital.keys()) | a view of all keys, in insertion order | dict_keys(['AndhraPradesh', 'Bihar', 'Maharashtra', 'Rajasthan']) |
| iii | print(stateCapital.values()) | a view of all values | dict_values(['Hyderabad', 'Patna', 'Mumbai', 'Jaipur']) |
| iv | print(stateCapital.items()) | a view of (key, value) tuples | dict_items([('AndhraPradesh', 'Hyderabad'), ('Bihar', 'Patna'), ('Maharashtra', 'Mumbai'), ('Rajasthan', 'Jaipur')]) |
| v | print(len(stateCapital)) | number of key:value pairs | 4 |
| vi | print("Maharashtra" in stateCapital) | in tests membership among the KEYS — "Maharashtra" is a key | True |
| vii | print(stateCapital.get("Assam")) | "Assam" is not a key; get() returns None instead of raising KeyError | None |
| viii | del stateCapital["Rajasthan"] then print(stateCapital) | del removes the Rajasthan:Jaipur pair; the remaining three pairs print | {'AndhraPradesh': 'Hyderabad', 'Bihar': 'Patna', 'Maharashtra': 'Mumbai'} |
Complete run:
Patna
dict_keys(['AndhraPradesh', 'Bihar', 'Maharashtra', 'Rajasthan'])
dict_values(['Hyderabad', 'Patna', 'Mumbai', 'Jaipur'])
dict_items([('AndhraPradesh', 'Hyderabad'), ('Bihar', 'Patna'), ('Maharashtra', 'Mumbai'), ('Rajasthan', 'Jaipur')])
4
True
None
{'AndhraPradesh': 'Hyderabad', 'Bihar': 'Patna', 'Maharashtra': 'Mumbai'}
Two favourite traps: (vii) stateCapital.get("Assam") prints None — it is stateCapital["Assam"] that would raise KeyError; and (vi) the in operator checks keys, so "Mumbai" in stateCapital would be False even though Mumbai is a value.
i) Patna · ii) dict_keys(['AndhraPradesh', 'Bihar', 'Maharashtra', 'Rajasthan']) · iii) dict_values(['Hyderabad', 'Patna', 'Mumbai', 'Jaipur']) · iv) dict_items([(state, capital) pairs of all four]) · v) 4 · vi) True · vii) None · viii) {'AndhraPradesh': 'Hyderabad', 'Bihar': 'Patna', 'Maharashtra': 'Mumbai'} after the del.
Unlock everything free for 14 days
- Full step-by-step solutions
- Concept-first explanations
- Methods, shortcuts & mistakes
- PYQ mapping + timed mock tests
Full access for 14 days. No credit card required.