Methods Reference ๐¶
Mentor's Note: Methods are like the "Special Moves" of an object. A String has different moves than a List. Use this page whenever you forget the exact name of a move! ๐ก
๐ The Scenario: The Multi-Tool ๐ ๏ธ¶
Imagine you have a high-tech tool that changes its heads.
- The Logic:
- When you attach the String Head ๐ก, you can
upper()(Scale) orstrip()(Clean). - When you attach the List Head ๐๏ธ, you can
append()(Add) orsort()(Arrange).
- When you attach the String Head ๐ก, you can
- The Result: You use the same tool (Your Code) but switch "Heads" (Methods) based on the data you are handling. โ
๐ Essential Methods by Type¶
1. String Methods (The Cleaners) ๐ก¶
Remember: These return a NEW string.
- .upper() / .lower(): Change case.
- .strip(): Remove leading/trailing spaces. ๐งน
- .replace(old, new): Swap parts of the text.
- .split(sep): Break a string into a List.
2. List Methods (The Organizers) ๐๏ธ¶
Remember: These change the ORIGINAL list.
- .append(x): Add item to the end.
- .insert(i, x): Add at a specific spot.
- .pop(i): Remove and return an item.
- .sort(): Put in alphabetical/numeric order.
3. Dictionary Methods (The Librarians) ๐¶
.keys(): Get all the labels..values(): Get all the data..get(key, default): Safely look up a value without crashing. ๐ก๏ธ
๐จ Visual Logic: Mutability Check¶
graph LR
A[String: 'Hi'] -- .upper --> B[New Object: 'HI']
C[List: 1, 2] -- .append 3 --> D[Same Object: 1, 2, 3]
style B fill:#dfd
style D fill:#ddf
๐ป Implementation: Method Lab¶
๐ Sample Dry Run (Dictionary .get)¶
Goal: Look for 'age' in D = {"name": "VD"}
| Step | Instruction | Logic | Result |
|---|---|---|---|
| 1 | D["age"] |
Direct access | CRASH ๐ฅ (KeyError) |
| 2 | D.get("age", 0) |
Safe access | 0 (Returns default) ๐ก๏ธ |
๐ก Interview Tip ๐¶
"Interviewers love asking: 'Why can't we sort a string in-place?' Answer: Because Strings are Immutable! You have to convert them to a list, sort, and join them back."
๐ก Pro Tip: "Good names are the best documentation. If you name your variables well, your code tells a story." - Anonymous