You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python如何获取函数内所有局部变量?如何隐式打印这些变量?

在Python函数中获取并打印所有局部变量的方法

嘿,这俩问题其实用Python内置的locals()函数就能轻松解决,我给你详细说说:

1. 获取函数内部的所有局部变量

在函数内部调用locals()函数,它会返回一个字典,里面包含了当前函数作用域内的所有局部变量——不管是传入的函数参数,还是你在函数里定义的变量,都会被收录其中。字典的键是变量名(字符串类型),对应的值就是变量的实际内容。

2. 无需逐个显式打印输出所有局部变量

当然有办法!利用locals()返回的字典,我们可以直接遍历它来批量输出所有变量,完全不用一个个写print(name)、print(city)这样的代码。

结合你的示例函数修改后的代码:

def some_function(a, b):
    name = 'mike'
    city = 'new york'
    # 获取所有局部变量的字典
    local_variables = locals()
    # 遍历字典输出所有变量
    print("函数内的所有局部变量:")
    for var_name, var_value in local_variables.items():
        print(f"{var_name}: {var_value}")

# 调用函数测试
some_function(10, 20)

运行后会输出:

函数内的所有局部变量:
a: 10
b: 20
name: mike
city: new york

另外提个小细节:locals()返回的是当前局部作用域的快照,修改这个字典的内容不会影响函数里实际的变量值,所以放心用来打印就好~

内容的提问来源于stack exchange,提问作者Ravi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.11 08:09:50