djk*_*jkp -4 python python-3.x
我正在尝试exec('global expression_result; expression_result = %s' % "a += 2")在 python 中执行。
它正在给我SyntaxError。我已经声明了变量a and expression_result。
在 ipython 中,我也尝试过 i = (a += 2) 这也给出了SyntaxError
如何评估这些类型的表达式并得到结果?
首先,你不应该使用execor eval。几乎不需要这些功能中的任何一个。
其次,赋值(例如,a+=2)不是Python 中的表达式(与 C、C++ 或 Java 不同)。它没有值,不能打印或进一步分配。根据其他评论者的建议,您可以将代码拆分为两个任务:
a += 2
i = a
Run Code Online (Sandbox Code Playgroud)
你不能用+=标志做到这一点。
但是如果你写得完整,它就可以工作。
i = a = a + 2
Run Code Online (Sandbox Code Playgroud)
所以 dropi = a += 2这基本上是i = a = a + 2
| 归档时间: |
|
| 查看次数: |
100 次 |
| 最近记录: |