{"type":"rich","version":"1.0","provider_name":"Transistor","provider_url":"https://transistor.fm","author_name":"Programming Tech Brief By HackerNoon","title":"Why Your Python Loops Are Creating the Wrong Functions","html":"<iframe width=\"100%\" height=\"180\" frameborder=\"no\" scrolling=\"no\" seamless src=\"https://share.transistor.fm/e/e8e9da56\"></iframe>","width":"100%","height":180,"duration":366,"description":"\n        This story was originally published on HackerNoon at: https://hackernoon.com/why-your-python-loops-are-creating-the-wrong-functions.\nLearn why Python functions created in loops often return the same value. Understand closure cells, late binding, and two standard fixes.\nCheck more stories related to programming at: https://hackernoon.com/c/programming.\n            You can also check exclusive content about #python, #for-loop-in-python, #effects-of-coding-on-my-brain, #how-to-learn-coding, #python-hidden-behavior, #factory-function, #default-argument-capture, #hackernoon-top-story,  and more.\nThis story was written by: @sohelalam79. Learn more about this writer by checking @sohelalam79's about page,\n            and for more stories, please visit hackernoon.com.\nPython functions created inside loops often return the same value because closures capture a variable, not a snapshot of its value. This behavior is known as late binding. When the loop finishes, all functions reference the final value of the loop variable. This article explains why it happens and demonstrates two standard solutions: default argument capture and factory functions.","thumbnail_url":"https://img.transistorcdn.com/KhCapPSRkLGL2Xw8888yuChkNRWthaKapLYTvNdu4W4/rs:fill:0:0:1/w:400/h:400/q:60/mb:500000/aHR0cHM6Ly9pbWct/dXBsb2FkLXByb2R1/Y3Rpb24udHJhbnNp/c3Rvci5mbS9zaG93/LzQxMTY2LzE2ODM1/ODIzMzAtYXJ0d29y/ay5qcGc.webp","thumbnail_width":300,"thumbnail_height":300}