Created
May 14, 2018 17:43
-
-
Save nikhilkumarsingh/5e26330c259dc6c8eaf09f2bdb92fea2 to your computer and use it in GitHub Desktop.
Parameter passing in Python
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"cells": [ | |
{ | |
"attachments": { | |
"image.png": { | |
"image/png": "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" | |
} | |
}, | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"# Is Python call by value or call by reference? " | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 1, | |
"metadata": {}, | |
"outputs": [], | |
"source": [ | |
"def increment(a):\n", | |
" a += 1" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 2, | |
"metadata": {}, | |
"outputs": [], | |
"source": [ | |
"num = 1" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 3, | |
"metadata": {}, | |
"outputs": [], | |
"source": [ | |
"increment(num)" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 4, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"text/plain": [ | |
"1" | |
] | |
}, | |
"execution_count": 4, | |
"metadata": {}, | |
"output_type": "execute_result" | |
} | |
], | |
"source": [ | |
"num" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 12, | |
"metadata": {}, | |
"outputs": [], | |
"source": [ | |
"def add_more(l):\n", | |
" print(id(l))\n", | |
" l.append(5)" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 6, | |
"metadata": {}, | |
"outputs": [], | |
"source": [ | |
"mylist = [1,2,3,4]" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 14, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
"140118813784008\n" | |
] | |
} | |
], | |
"source": [ | |
"add_more(mylist)" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 8, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"text/plain": [ | |
"[1, 2, 3, 4, 5]" | |
] | |
}, | |
"execution_count": 8, | |
"metadata": {}, | |
"output_type": "execute_result" | |
} | |
], | |
"source": [ | |
"mylist" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 13, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"text/plain": [ | |
"140118813784008" | |
] | |
}, | |
"execution_count": 13, | |
"metadata": {}, | |
"output_type": "execute_result" | |
} | |
], | |
"source": [ | |
"id(mylist)" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 9, | |
"metadata": {}, | |
"outputs": [], | |
"source": [ | |
"mylist = [1,2,3,4]" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 10, | |
"metadata": {}, | |
"outputs": [], | |
"source": [ | |
"add_more(mylist)" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 11, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"text/plain": [ | |
"[1, 2, 3, 4, 5]" | |
] | |
}, | |
"execution_count": 11, | |
"metadata": {}, | |
"output_type": "execute_result" | |
} | |
], | |
"source": [ | |
"mylist" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 18, | |
"metadata": {}, | |
"outputs": [], | |
"source": [ | |
"def clean_it(l):\n", | |
" print(id(l))\n", | |
" l = []\n", | |
" print(id(l))" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 19, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
"140118813784008\n", | |
"140118813784904\n" | |
] | |
} | |
], | |
"source": [ | |
"clean_it(mylist)" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 17, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"text/plain": [ | |
"[1, 2, 3, 4, 5, 5]" | |
] | |
}, | |
"execution_count": 17, | |
"metadata": {}, | |
"output_type": "execute_result" | |
} | |
], | |
"source": [ | |
"mylist" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": null, | |
"metadata": {}, | |
"outputs": [], | |
"source": [] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"" | |
] | |
} | |
], | |
"metadata": { | |
"kernelspec": { | |
"display_name": "Python 3", | |
"language": "python", | |
"name": "python3" | |
}, | |
"language_info": { | |
"codemirror_mode": { | |
"name": "ipython", | |
"version": 3 | |
}, | |
"file_extension": ".py", | |
"mimetype": "text/x-python", | |
"name": "python", | |
"nbconvert_exporter": "python", | |
"pygments_lexer": "ipython3", | |
"version": "3.6.5" | |
} | |
}, | |
"nbformat": 4, | |
"nbformat_minor": 2 | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment