Flow Control contd
- looping constructs
- while: Refer Here
- for: Refer Here
- Refer Here for basic looping constructs
The id() function in Python returns a unique identifier for the object passed to it. This identifier is essentially the memory address of the object in the CPython implementation, which is the most commonly used Python interpreter. The id() function is used to identify objects uniquely during their lifetime, meaning that no two objects can have the same id() value at the same time. However, once an object is deleted and its memory is freed, the same id() value can be reused for a new object.
Here’s a basic example of how id() works:
a = 10
b = 10
print(id(a)) # Output: Memory address of a
print(id(b)) # Output: Same memory address as a, because Python caches small integers
c = [1, 2, 3]
d = [1, 2, 3]
print(id(c)) # Output: Memory address of c
print(id(d)) # Output: Different memory address from c, because lists are mutable and not cached
Use Cases for id():
- Debugging: It can help you understand whether two variables are referencing the same object or different objects.
- Identifying Object Creation: Useful for tracking when new objects are created versus when existing objects are reused.
- Understanding Memory Management: Helps in understanding how Python manages memory for different types of objects.
Syntax:
id(object)
Return Value:
- A unique integer representing the object’s memory address.
Citations:
[1] https://www.programiz.com/python-programming/methods/built-in/id
[2] https://www.w3schools.com/python/ref_func_id.asp
[3] https://www.digitalocean.com/community/tutorials/python-id
[4] https://stackoverflow.com/questions/15667189/what-is-id-function-used-for-in-python
[5] https://www.youtube.com/watch?v=IGLnxdmJu2c
[6] https://dev.to/isma/what-is-the-python-id-function-4gik
[7] https://www.reddit.com/r/learnpython/comments/xf3mvz/what_are_some_use_cases_for_the_id_function/
[8] https://docs.python.org/3/library/functions.html
Memory Leaks
- Memory leak refers to a memory allocated by an application which is not getting cleared
- In languages like c we are responsible for deallocating memory
- In languages like C#, Java, Javascript they have garbage collectors
Income tax calculator
- Refer Here for the solution
