在python中打印变量名称

时间:2018-07-15 08:28:31

标签: python python-3.x dataframe

这里 bkd_train,bkd_test 数据帧。

我想打印数据框名称及其形状。

for data in [bkd_train, bkd_test]:
    print("{} : {}".format(?, data.shape))

如果我使用“数据”,那么它正在打印数据框。

但是我想要这样的操作:

bkd_train : (10886, 12)
bkd_test : (1111,11)

2 个答案:

答案 0 :(得分:1)

您无法将变量的名称获取为字符串,但是可以在输入中传递字符串并查询sphericalView = (SphericalView) findViewById(R.id.spherical_view); sphericalView.getCamera().setRotation(10,800,10000); sphericalView.setPanorama(PLUtils.getBitmap(this, R.drawable.three), true); 字典以获取值:

locals

如果变量是局部的,它可以工作。如果它们是全局的,则使用for data in ["bkd_train", "bkd_test"]: print("{} : {}".format(data,locals()[data].shape)) ,后退为globals或仅使用locals(在这种情况下这不是问题,因为要评估的字符串是恒定的)

另请参阅:How to get a variable name as a string?

答案 1 :(得分:1)

我将遍历变量名称本身,然后使用eval评估将为您提供数据框的名称。

for dataName in ['bkd_train', 'bkd_test']:
    data = eval(dataName)
    print("{} : {}".format(dataName, data.shape))