草庐IT

python - 使用 python 的 eval() 与 ast.literal_eval()

我遇到了一些代码的情况,其中eval()是一种可能的解决方案。现在,我以前从未使用过eval(),但是,我发现了大量关于它可能导致的潜在危险的信息。也就是说,我对使用它非常谨慎。我的情况是我有用户给出的输入:datamap=input('Providesomedatahere:')datamap需要是字典。我四处搜索,发现eval()可以解决这个问题。我认为我可以在尝试使用数据之前检查输入的类型,这将是一种可行的安全预防措施。datamap=eval(input('Providesomedatahere:')ifnotisinstance(datamap,dict):return我通读