相关疑难解决方法(0)

为什么要避免使用exec()和eval()?

我在多个地方多次看过这个,但从来没有找到令人满意的解释,为什么会出现这种情况.

所以,希望有人会在这里提出.为什么我们(至少一般)不使用exec()eval()

编辑:我看到人们假设这个问题与网络服务器有关 - 它没有.我可以看到为什么传递给unsanitized的字符串exec可能不好.在非网络应用程序中它是坏的吗?

python

26
推荐指数
8
解决办法
9373
查看次数

Python - 创建20个变量的有效方法?

我需要在Python中创建20个变量.这些变量都是需要的,它们最初应该是空字符串,空字符串稍后将被其他字符串替换.我不能在需要时根据需要创建变量,因为我还有一些if/else语句需要检查变量是否仍为空或已经等于其他字符串.

而不是写作

variable_a = ''
variable_b = ''
....
Run Code Online (Sandbox Code Playgroud)

我想到了类似的东西

list = ['a', 'b']
for item in list:
    exec("'variable_'+item+' = '''")
Run Code Online (Sandbox Code Playgroud)

此代码不会导致错误,但仍然无法实现我所期望的 - 变量不是使用名称"variable_1"创建的,依此类推.

我的错误在哪里?

谢谢,Woodpicker

python variables creation exec

-2
推荐指数
1
解决办法
252
查看次数

标签 统计

python ×2

creation ×1

exec ×1

variables ×1