power(x, y) 函数,计算 x 的 y 次方。
示例:
x 和 y 为单个数字:
1
2
|
import numpy as np
print (np.power( 2 , 3 ))
|
8
分析:2 的 3 次方。
x 为列表,y 为单个数字:
1
|
print (np.power([ 2 , 3 , 4 ], 3 ))
|
[ 8 27 64]
分析:分别求 2, 3, 4 的 3 次方。
x 为单个数字,y 为列表:
1
|
print (np.power( 2 , [ 2 , 3 , 4 ]))
|
[ 4 8 16]
分析:分别求 2的 2, 3, 4 次方。
x 和 y 为列表:
1
|
print (np.power([ 2 , 3 ], [ 3 , 4 ]))
|
[ 8 81]
分析:分别求 2 的 3 次方和 3 的 4 次方。
补充:有关于python3.X.X中的power()函数的使用方法和细节
该函数在求欧氏距离较为常用,手写机器学习时候会用到比较多
函数解释:
--- power(A,B) :求A的B次方,数学等价于A^B
---其中A和B既可以是数字(标量),也可以是列表(向量)
分三种情况:
1. A、B都是数字(标量)时候,就是求A的B次方
1
2
3
4
|
In [ 83 ]: a , b = 3 , 4
In [ 84 ]: np.power(a,b)
Out[ 84 ]: 81
|
2. A是列表(向量),B是数字(标量)时候,分两个子情况:
----power(A,B):A列表(向量)中所有元素,求B的次方;
----power(B,A):生成一个长度len(A)的列表,元素为B^A次方。具体看例子
1
2
3
4
5
6
7
8
9
|
In [ 10 ]: A, B = [ 1 , 2 , 3 ], 3
# 列表A的B次方:[1^3, 2^3, 3^3]
In [ 11 ]: np.power(A,B)
Out[ 11 ]: array([ 1 , 8 , 27 ])
# 返回len(A)长度的列表,其中元素[3^1, 3^2, 3^3]
In [ 12 ]: np.power(B,A)
Out[ 12 ]: array([ 3 , 9 , 27 ])
|
3. AB都是列表(向量)时候,必须len(A)=len(B)
1
2
3
4
5
6
7
8
9
10
|
In [ 13 ]: A , B = [ 1 , 2 , 3 ],[ 4 , 5 , 6 ]
In [ 14 ]: np.power(A,B)
Out[ 14 ]: array([ 1 , 32 , 729 ])
# 如果A和B的长度不一样,会报错
In [ 15 ]: A , B = [ 1 , 2 , 3 ],[ 4 , 5 , 6 , 7 ]
In [ 16 ]: np.power(A,B)
ValueError: operands could not be broadcast together with shapes ( 3 ,) ( 4 ,)
|
以上为个人经验,希望能给大家一个参考,也希望大家多多支持服务器之家。如有错误或未考虑完全的地方,望不吝赐教。
原文链接:https://blog.csdn.net/qq_36512295/article/details/98472358