如何将其转换为词典?
params = "{'cat_features':[X.columns.get_loc(i) for i in cat_vars],
'num_boost_round':100, 'eta':.01, 'reg_lambda':1.8, 'verbose':False,
'loss_function':'MultiClass','early_stopping_rounds':5}"
在没有第一部分[X.columns.get_loc(i) for i in cat_vars]
的情况下,我可以运行ast.literal_eval()
,但是如果字符串中包含python代码,那将不起作用。知道如何解决这个问题吗?
答案 0 :(得分:3)
您可以使用普通的eval
。
但是,如果字符串来自不受信任的来源,则使用eval
是有风险的,因为精心制作的字符串可以在运行程序的计算机上执行任何操作。