【问题标题】:explain 1 line of C-code and translate it to Python [duplicate]解释 1 行 C 代码并将其翻译成 Python [重复]
【发布时间】: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 中编写这个向量化的?谢谢!

【问题讨论】:

    标签: python c 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 值。

      【讨论】:

        猜你喜欢
        • 2017-11-04
        • 2016-06-26
        • 2013-11-25
        • 2018-09-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-09-05
        • 1970-01-01
        相关资源
        最近更新 更多