Question
Which of the following statements about parameter
passing in Python is TRUE?Solution
In Python, arguments are passed to functions using pass-by-object-reference , a hybrid approach where the behavior depends on the object’s mutability. For mutable objects (e.g., lists, dictionaries), functions can modify the object directly, as the reference points to the same memory location. For immutable objects (e.g., integers, strings), any attempt to modify them results in a new object being created, leaving the original object unchanged. For example: def modify_list(lst): lst.append(4) my_list = [1, 2, 3] modify_list(my_list) print(my_list) # Output: [1, 2, 3, 4] In the case of immutables: def modify_int(x): x += 1 num = 5 modify_int(num) print(num) # Output: 5 This illustrates that Python’s approach is neither traditional pass-by-value nor pass-by-reference. Why Other Options Are Incorrect:
- Option A: Python does not strictly follow pass-by-value. Instead, objects are passed as references, which may or may not result in modification based on their mutability.
- Option B: This incorrectly splits the behavior based on mutability. Both mutable and immutable objects are passed by reference; the difference lies in how modifications are handled.
- Option D: This is partially true in terms of scope but does not explain how references to objects work.
- Option E: Functions can indeed modify mutable arguments, as shown in the first example.
'रघुपति राघव राजा राम।' इसमें कौन सा अलंकार है?
गागर में सागर भरना का अर्थ है -
सूची – I को सूची & II से सुमेलित कीजिए और सूचियों के नीचे दिए ग�...
इनमें से किस वाक्य में कर्तृवाच्य का प्रयोग हुआ है –
सूची- I को सूची – II से सुमेलित कीजिए और सूचियों के नीचे दिए ग�...
चाँद’ का तत्सम होगा
तरनि तनूजा तट तमाल तरुवर बहु छाये।
झुके कूल सों जल परसन �...
निम्नलिखित में कौन सा शब्द पुल्लिंग है ?
वाक्य के अशुद्ध भाग का चयन कीजिए –
परीक्षा की ( A)/ �...
निम्नलिखित प्रश्नों में छह वाक्य S1, S6, P, O, R और S के रूप में संक�...