gpt4 book ai didi

python - 是否可以在另一个函数中访问局部变量?

转载 作者:行者123 更新时间:2023-12-01 03:40:41 25 4
gpt4 key购买 nike

目标:需要在另一个函数中使用局部变量。这在 Python 中可能吗?

我想在其他函数中使用局部变量。因为就我而言,我需要使用计数器来查看发生的连接数和释放的连接数/为此,我正在维护一个计数器。为了实现这一点,我编写了用于计数并在另一个函数中返回局部变量的示例代码。

如何打印t & my_replytest()功能?

代码:counter_glob.py

my_test = 0
t = 0

def test():
print("I: ",t)
print("IIIIIIII: ",my_reply)

def my():
global t
reply = foo()
t = reply
print("reply:",reply)
print("ttttt:",t)

def foo():
global my_test
my_test1 = 0
my_test += 1
print my_test1
my_test1 = my_test
my_test += 1
print("my_test:",my_test1)
return my_test1

my()

结果:

> $ python counter_glob.py
0
('my_test:', 1)
('reply:', 1)
('ttttt:', 1)

最佳答案

访问函数的局部作用域有不同的方法。如果需要,您可以通过调用 locals() 返回整个局部作用域,这将为您提供函数的整个局部作用域,保存局部作用域是非典型的。对于您的函数,您可以在函数本身中保存所需的变量,func.var = value:

def test():
print("I: ", my.t)
print("IIIIIIII: ", my.reply)

def my():
my.reply = foo()
my.t = m.reply
print("reply:", my.reply)
print("ttttt:", my.t)

您现在可以正常访问treply。每次调用函数 myreply 都会更新,无论 foo 返回什么都会分配给 my.reply

关于python - 是否可以在另一个函数中访问局部变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39682842/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com