首页 > 解决方案 > 解释 1 行 C 代码并将其翻译成 Python

问题描述

有人可以向我解释以下 C 代码行并将其翻译成 Python 吗?我没有计划……

x[IX(0 ,i)] = b==1 ? –x[IX(1,i)] : x[IX(1,i)]

数组结构并不重要(除了我也对向量化的 Numpy 形式感兴趣)。我有兴趣了解 C 命令。简化我们可以写

D = b==1 ? –A : A

这是什么意思?最后D的结果是什么?的作用是–A : A什么?我们如何用 Python 编写它?我们如何在 Numpy 中编写这个向量化的?谢谢 !

标签: pythoncnumpy

解决方案


替代形式:

if(b==1)
  D = -A;
else
  D = A;

或者

if(b==1)
  x[IX(0 ,i)] = –x[IX(1,i)];
else
   x[IX(0 ,i)] = x[IX(1,i)];

我认为以这种形式翻译成python并不难


推荐阅读