В чем разница между следующими кодами?
code1
var=2**2*3
code2:
var2=2*2*3
Я не вижу разницы. Это вызывает следующий вопрос.
Почему используется код1, если мы можем использовать код2?
В чем разница между следующими кодами?
code1
var=2**2*3
code2:
var2=2*2*3
Я не вижу разницы. Это вызывает следующий вопрос.
Почему используется код1, если мы можем использовать код2?
Try:
2**3*2
и
2*3*2
чтобы увидеть разницу.
**
является оператором для "мощности". В вашей конкретной операции 2 до степени 2 дает то же самое, что и 2 раза 2.
Двойные звезды (**
) - это возведение в степень. Таким образом, "2 раза 2" и "2 - мощность 2" одинаковы. Измените числа, и вы увидите разницу.
2**2 means 2 squared (2^2)
2*2 mean 2 times 2 (2x2)
В этом случае они имеют одинаковое значение, но...
3**3*4 != 3*3*4
Чтобы конкретно ответить на ваш вопрос Почему используется код1, если мы можем использовать код2? Я мог бы предположить, что программист думал в математически более широком смысле. В частности, возможно, более широкое уравнение является уравнением мощности, а тот факт, что оба первых числа являются "2", больше совпаден, чем математическая реальность. Я хотел бы убедиться, что более широкий контекст кода поддерживает его
var = x * x * y
во всех случаях, а не только в этом конкретном случае. Это может вызвать у вас большие проблемы, если x - это всего лишь 2. Для зрителей.................
2 ** 2 = 2 мощности - 2
2 * 2 = 2 раза 2
Оператор **
в Python - это действительно "сила"; то есть 2**3 = 8
.
Верхний - это "силовой" оператор, поэтому в этом случае он совпадает с 2 * 2, равным 2, по мощности 2. Если вы положите 3 в среднее положение, вы увидите разницу.
Двойная звездочка означает силу. Единая звездочка означает умножение. 2 2 совпадает с 2x2, поэтому оба ответа вышли как 4.
Мощность имеет больше приоритета, чем умножение, поэтому:
2**2*3 = (2^2)*3
2*2*3 = 2*2*3
Ребята, а как насчет 4 до степени 1/2 (то есть 0,5)? Разве это не вопрос квадратного корня из 4, то есть 2?? Но когда я набираю
4 ** 0,5
Я не получаю 2 вообще.
Пожалуйста помоги.