解释 1 行 C 代码并将其翻译成 Python [重复]
Posted
技术标签:
【中文标题】解释 1 行 C 代码并将其翻译成 Python [重复]【英文标题】:explain 1 line of C-code and translate it to Python [duplicate] 【发布时间】:2021-08-01 19:53:03 【问题描述】:有人可以解释一下下面这行 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 中编写这个向量化的?谢谢!
【问题讨论】:
【参考方案1】:另一种形式:
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并不难
【讨论】:
【参考方案2】:如果我正确理解您的问题....那么情况就是这样:
这是一个三元运算符方法,它就像 if else 的替代。例如:在此示例中,如果 b 的值等于 1,即条件为真,则 -A 将存储在 D 中,否则它将在 D 中保存 A 值。
【讨论】:
以上是关于解释 1 行 C 代码并将其翻译成 Python [重复]的主要内容,如果未能解决你的问题,请参考以下文章