python - 在python中打印变量名
问题描述
这里bkd_train、bkd_test是数据帧。
我想打印数据框名称及其形状。
for data in [bkd_train, bkd_test]:
print("{} : {}".format(?, data.shape))
如果我使用“数据”,那么它正在打印数据框。
但我想要这样的o/p:
bkd_train : (10886, 12)
bkd_test : (1111,11)
解决方案
您不能将变量的名称作为字符串获取,但您可以在输入和查询locals
字典中传递一个字符串来获取值:
for data in ["bkd_train", "bkd_test"]:
print("{} : {}".format(data,locals()[data].shape))
如果变量是本地的,它就可以工作。如果它们是全局的,则使用globals
, 回退 on locals
,或者只是eval
(在这种情况下不是问题,因为要评估的字符串是恒定的)
另请阅读:如何将变量名作为字符串获取?
推荐阅读
- c# - 在获取数据时使用 Winforms UI
- c# - OData AspNetCore 对使用 $query 的长 URL 的支持不起作用
- amazon-web-services - Terraform:为什么 AWS NAT 网关与仅出口 Internet 网关冲突
- c#-4.0 - 通过将这些 pdf 合并到 SSRS 报告来将上传的 pdf 文件添加到 SSRS 报告的正确方法是什么
- html - 我们如何称呼这个由三个水平点组成的小部件?
- azure - 无法使用 packer chef-client provisioner 从 chef-client 连接到 chef-server
- reactjs - 模拟搜索并选择一个选项 react-select
- php - 如何在 WordPress 中延迟第三方屏幕外图像
- java - 线程和同步
- c# - .NET5/Core 下的 Linux 进程输出重定向导致不正确/损坏的行为