【问题标题】:what does '**+' operator behave in python?'**+' 运算符在 python 中的行为是什么?
【发布时间】:2018-01-30 12:05:52
【问题描述】:

我是 python 的新手,并试图理解下面的部分。

[i**+1 for i in range(3)]

我知道i += 1 表示i = i + 1,但**+ 是什么意思? 我知道** 表示指数,但上述列表理解的输出让我感到困惑。

【问题讨论】:

标签: python python-3.x operators


【解决方案1】:

这种混淆是由于没有像 PEP8 建议的那样用空格包围运算符。

[i**+1 for i in range(3)][i ** +1 for i in range(3)] 相同,[i ** 1 for i in range(3)] 相同。

[i**+1 for i in range(3)] 的输出是 [0, 1, 2],这是预期的输出。

**+1 就是** +1,这是第一个st 正能量。 + 在这里是多余的。

【讨论】:

    【解决方案2】:

    这类似于: i 的 1 次方,即 +1

    [i**+1 for i in range(3)]

    注意:+1 不是这里的加法。这就是我的力量

       o to the power of +1 = 0;
    
       1 to the power of +1 = 1;
    
       2 to the power of +1 = 2;
    

    所以答案是:[0, 1, 2]

    【讨论】:

      猜你喜欢
      • 2015-05-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-16
      • 2013-08-18
      • 2016-11-18
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多