What's the difference between “2*2” and “2**2” in Python?

前端 未结 10 1025
小蘑菇
小蘑菇 2020-12-30 18:36

What is the difference between the following codes?

code1:

var=2**2*3

code2:

var2         


        
相关标签:
10条回答
  • 2020-12-30 18:58

    The ** operator in Python is really "power;" that is, 2**3 = 8.

    0 讨论(0)
  • 2020-12-30 18:58

    The top one is a "power" operator, so in this case it is the same as 2 * 2 equal to is 2 to the power of 2. If you put a 3 in the middle position, you will see a difference.

    0 讨论(0)
  • 2020-12-30 19:02

    For visual learners.........................

    0 讨论(0)
  • 2020-12-30 19:03

    Try:

    2**3*2
    

    and

    2*3*2
    

    to see the difference.

    ** is the operator for "power of". In your particular operation, 2 to the power of 2 yields the same as 2 times 2.

    0 讨论(0)
  • 2020-12-30 19:04

    Double stars (**) are exponentiation. So "2 times 2" and "2 to the power 2" are the same. Change the numbers and you'll see a difference.

    0 讨论(0)
  • 2020-12-30 19:07

    To specifically answer your question Why is the code1 used if we can use code2? I might suggest that the programmer was thinking in a mathematically broader sense. Specifically, perhaps the broader equation is a power equation, and the fact that both first numbers are "2" is more coincidence than mathematical reality. I'd want to make sure that the broader context of the code supports it being

    var = x * x * y
    in all cases, rather than in this specific case alone. This could get you in big trouble if x is anything but 2.

    0 讨论(0)
提交回复
热议问题