Py学习  »  Python

在python中,如何在eval内部使用for循环(或具有缩进的内容)

k23j4 • 6 年前 • 1561 次点击  

我要实现的是:

如果传递的参数数组的长度为3,则执行自定义函数(在本例中 regex_rep )数组作为参数。

regex_rep(args[1], args[2], args[3])

如果长度为4,则必须将数组扩展为如下参数。

regex_rep(args[1], args[2], args[3], args[4])

我想到的实现这个的方法是使用eval。我在使用bash,在bash中,您可以使用如下eval:

eval "regex_rep\($( for i in ${args[@]}; do echo "args[i], " ; done | sed -Ee 's/, $//g' )\)"

所以我试着跟着一个,但我出错了 SyntaxError: invalid syntax .

eval("""
for i in ["some","thing"]:
  print(i)
""")

我的问题是:如何使用eval内部的循环(或具有缩进的内容)?另外,如果您有更好的想法来实现上面的一个,请告诉我。谢谢。

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/38750
文章 [ 1 ]  |  最新文章 6 年前