我要实现的是:
如果传递的参数数组的长度为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内部的循环(或具有缩进的内容)?另外,如果您有更好的想法来实现上面的一个,请告诉我。谢谢。