Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 102583
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 11, 20262026-05-11T00:59:19+00:00 2026-05-11T00:59:19+00:00

Is there any way to modify the bound value of one of the variables

  • 0

Is there any way to modify the bound value of one of the variables inside a closure? Look at the example to understand it better.

def foo():     var_a = 2     var_b = 3      def _closure(x):         return var_a + var_b + x      return _closure   localClosure = foo()  # Local closure is now 'return 2 + 3 + x' a = localClosure(1) # 2 + 3 + 1 == 6  # DO SOME MAGIC HERE TO TURN 'var_a' of the closure into 0 # ...but what magic? Is this even possible?  # Local closure is now 'return 0 + 3 + x' b = localClosure(1) # 0 + 3 +1 == 4 
  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. 2026-05-11T00:59:19+00:00Added an answer on May 11, 2026 at 12:59 am

    I don’t think there is any way to do that in Python. When the closure is defined, the current state of variables in the enclosing scope is captured and no longer has a directly referenceable name (from outside the closure). If you were to call foo() again, the new closure would have a different set of variables from the enclosing scope.

    In your simple example, you might be better off using a class:

    class foo:         def __init__(self):                 self.var_a = 2                 self.var_b = 3          def __call__(self, x):                 return self.var_a + self.var_b + x  localClosure = foo()  # Local closure is now 'return 2 + 3 + x' a = localClosure(1) # 2 + 3 + 1 == 6  # DO SOME MAGIC HERE TO TURN 'var_a' of the closure into 0 # ...but what magic? Is this even possible? localClosure.var_a = 0  # Local closure is now 'return 0 + 3 + x' b = localClosure(1) # 0 + 3 +1 == 4 

    If you do use this technique I would no longer use the name localClosure because it is no longer actually a closure. However, it works the same as one.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Ask A Question

Stats

  • Questions 59k
  • Answers 59k
  • Best Answers 0
  • User 1
  • Popular
  • Answers
  • Editorial Team

    How to approach applying for a job at a company ...

    • 7 Answers
  • Editorial Team

    How to handle personal stress caused by utterly incompetent and ...

    • 5 Answers
  • Editorial Team

    What is a programmer’s life like?

    • 5 Answers
  • added an answer After a little searching around I found a way to… May 11, 2026 at 9:00 am
  • added an answer Turns out I don't need the first line. The second… May 11, 2026 at 9:00 am
  • added an answer You'd be calculating the eigenvectors of a 2x2 matrix, which… May 11, 2026 at 9:00 am

Related Questions

Is there any way to modify the bound value of one of the variables
Is there any way to check whether a file is locked without using a
Is there any way to capture the MouseDown even from the .NET 2.0 TextBox
Is there any way to apply an attribute to a model file in ASP.NET
Is there any way to have something that looks just like a file on
Is there any way to include the SVN repository revision number in the version
Is there any way to use inheritance in database (Specifically in SQL Server 2005)?
Is there any way to force a listview control to treat all clicks as
Is there any way to listen to an Oracle AQ using a Perl process
Is there any way to Write files to App_Data under medium trust hack? Im

Trending Tags

analytics british company computer developers django employee employer english facebook french google interview javascript language life php programmer programs salary

Top Members

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.