在Python脚本中,我从rpy2
调用了一个函数,但得到以下错误:
#using an R module
res = DirichletReg.ddirichlet(np.asarray(my_values),alphas,
log=False, sum.up=False)
SyntaxError: keyword can't be an expression
这里到底出了什么问题?
发布于 2012-07-24 22:49:48
因为sum.up不是有效的参数名,所以sum.up=False
命名参数上的python源代码解析器失败(不能在参数名中使用圆点--只能使用字母数字和下划线)。
发布于 2017-12-07 03:58:17
使用Elastic search DSL API时,您可能会遇到相同的错误
s = Search(using=client, index="my-index") \
.query("match", category.keyword="Musician")
您可以通过执行以下操作来解决此问题:
s = Search(using=client, index="my-index") \
.query({"match": {"category.keyword":"Musician/Band"}})
发布于 2014-03-24 18:34:27
我只是在从%
格式转换到.format()
时遇到了这个问题。
前面的代码:
"SET !TIMEOUT_STEP %{USER_TIMEOUT_STEP}d" % {'USER_TIMEOUT_STEP' = 3}
有问题的语法:
"SET !TIMEOUT_STEP {USER_TIMEOUT_STEP}".format('USER_TIMEOUT_STEP' = 3)
问题是format
是一个需要参数的函数。它们不能是字符串。这是我见过的最糟糕的python错误消息之一。
已更正代码:
"SET !TIMEOUT_STEP {USER_TIMEOUT_STEP}".format(USER_TIMEOUT_STEP = 3)
https://stackoverflow.com/questions/11633421
复制相似问题