Numpy入门教程:04. 数学函数
背景
什么是 NumPy 呢?
NumPy 这个词来源于两个单词 – Numerical
和Python
。其是一个功能强大的 Python 库,可以帮助程序员轻松地进行数值计算,通常应用于以下场景:
- 执行各种数学任务,如:数值积分、微分、内插、外推等。因此,当涉及到数学任务时,它形成了一种基于 Python 的 MATLAB 的快速替代。
- 计算机中的图像表示为多维数字数组。NumPy 提供了一些优秀的库函数来快速处理图像。例如,镜像图像、按特定角度旋转图像等。
- 在编写机器学习算法时,需要对矩阵进行各种数值计算。如:矩阵乘法、求逆、换位、加法等。NumPy 数组用于存储训练数据和机器学习模型的参数。
向量化和广播
向量化和广播这两个概念是 numpy 内部实现的基础。有了向量化,编写代码时无需使用显式循环。这些循环实际上不能省略,只不过是在内部实现,被代码中的其他结构代替。向量化的应用使得代码更简洁,可读性更强,也可以说使用了向量化方法的代码看上去更“Pythonic”。
广播(Broadcasting)机制描述了 numpy 如何在算术运算期间处理具有不同形状的数组,让较小的数组在较大的数组上“广播”,以便它们具有兼容的形状。并不是所有的维度都要彼此兼容才符合广播机制的要求,但它们必须满足一定的条件。
若两个数组的各维度兼容,也就是两个数组的每一维等长,或其中一个数组为一维,那么广播机制就适用。如果这两个条件不满足,numpy就会抛出异常,说两个数组不兼容。
【例】
import numpy as npx = np.arange(4)
xx = x.reshape(4, 1)
y = np.ones(5)
z = np.ones((3, 4))print(x.shape) # (4,)
print(y.shape) # (5,)
print(xx.shape) # (4, 1)
print(z.shape) # (3, 4)print(x + y)
# ValueError: operands could not be broadcast together with shapes (4,) (5,) print((xx + y).shape) # (4, 5)
print(xx + y)
# [[1. 1. 1. 1. 1.]
# [2. 2. 2. 2. 2.]
# [3. 3. 3. 3. 3.]
# [4. 4. 4. 4. 4.]]print((x + z).shape) # (3, 4)
print(x + z)
# [[1. 2. 3. 4.]
# [1. 2. 3. 4.]
# [1. 2. 3. 4.]]a = np.array([0.0, 10.0, 20.0, 30.0])
b = np.array([1.0, 2.0, 3.0])
c = a[:, np.newaxis] + b
print(c)
# [[ 1. 2. 3.]
# [11. 12. 13.]
# [21. 22. 23.]
# [31. 32. 33.]]
数学函数
算数运算
numpy.add(x1, x2, *args, **kwargs)
Add arguments element-wise.numpy.subtract(x1, x2, *args, **kwargs)
Subtract arguments element-wise.numpy.multiply(x1, x2, *args, **kwargs)
Multiply arguments element-wise.numpy.divide(x1, x2, *args, **kwargs)
Returns a true division of the inputs, element-wise.numpy.floor_divide(x1, x2, *args, **kwargs)
Return the largest integer smaller or equal to the division of the inputs.numpy.power(x1, x2, *args, **kwargs)
First array elements raised to powers from second array, element-wise.
在 numpy 中对以上函数进行了运算符的重载,且运算符为 元素级。也就是说,它们只用于位置相同的元素之间,所得到的运算结果组成一个新的数组。
【例】
import numpy as npx = np.array([1, 2, 3, 4, 5, 6, 7, 8])
y = x + 1
print(y)
print(np.add(x, 1))
# [2 3 4 5 6 7 8 9]y = x - 1
print(y)
print(np.subtract(x, 1))
# [0 1 2 3 4 5 6 7]y = x * 2
print(y)
print(np.multiply(x, 2))
# [ 2 4 6 8 10 12 14 16]y = x / 2
print(y)
print(np.divide(x, 2))
# [0.5 1. 1.5 2. 2.5 3. 3.5 4. ]y = x // 2
print(y)
print(np.floor_divide(x, 2))
# [0 1 1 2 2 3 3 4]y = x ** 2
print(y)
print(np.power(x, 2))
# [ 1 4 9 16 25 36 49 64]
【例】
import numpy as npx = np.array([[11, 12, 13, 14, 15],[16, 17, 18, 19, 20],[21, 22, 23, 24, 25],[26, 27, 28, 29, 30],[31, 32, 33, 34, 35]])
y = x + 1
print(y)
print(np.add(x, 1))
# [[12 13 14 15 16]
# [17 18 19 20 21]
# [22 23 24 25 26]
# [27 28 29 30 31]
# [32 33 34 35 36]]y = x - 1
print(y)
print(np.subtract(x, 1))
# [[10 11 12 13 14]
# [15 16 17 18 19]
# [20 21 22 23 24]
# [25 26 27 28 29]
# [30 31 32 33 34]]y = x * 2
print(y)
print(np.multiply(x, 2))
# [[22 24 26 28 30]
# [32 34 36 38 40]
# [42 44 46 48 50]
# [52 54 56 58 60]
# [62 64 66 68 70]]y = x / 2
print(y)
print(np.divide(x, 2))
# [[ 5.5 6. 6.5 7. 7.5]
# [ 8. 8.5 9. 9.5 10. ]
# [10.5 11. 11.5 12. 12.5]
# [13. 13.5 14. 14.5 15. ]
# [15.5 16. 16.5 17. 17.5]]y = x // 2
print(y)
print(np.floor_divide(x, 2))
# [[ 5 6 6 7 7]
# [ 8 8 9 9 10]
# [10 11 11 12 12]
# [13 13 14 14 15]
# [15 16 16 17 17]]y = x ** 2
print(y)
print(np.power(x, 2))
# [[ 121 144 169 196 225]
# [ 256 289 324 361 400]
# [ 441 484 529 576 625]
# [ 676 729 784 841 900]
# [ 961 1024 1089 1156 1225]]
【例】
import numpy as npx = np.array([[11, 12, 13, 14, 15],[16, 17, 18, 19, 20],[21, 22, 23, 24, 25],[26, 27, 28, 29, 30],[31, 32, 33, 34, 35]])y = np.arange(1, 6)
print(y)
# [1 2 3 4 5]z = x + y
print(z)
print(np.add(x, y))
# [[12 14 16 18 20]
# [17 19 21 23 25]
# [22 24 26 28 30]
# [27 29 31 33 35]
# [32 34 36 38 40]]z = x - y
print(z)
print(np.subtract(x, y))
# [[10 10 10 10 10]
# [15 15 15 15 15]
# [20 20 20 20 20]
# [25 25 25 25 25]
# [30 30 30 30 30]]z = x * y
print(z)
print(np.multiply(x, y))
# [[ 11 24 39 56 75]
# [ 16 34 54 76 100]
# [ 21 44 69 96 125]
# [ 26 54 84 116 150]
# [ 31 64 99 136 175]]z = x / y
print(z)
print(np.divide(x, y))
# [[11. 6. 4.33333333 3.5 3. ]
# [16. 8.5 6. 4.75 4. ]
# [21. 11. 7.66666667 6. 5. ]
# [26. 13.5 9.33333333 7.25 6. ]
# [31. 16. 11. 8.5 7. ]]z = x // y
print(z)
print(np.floor_divide(x, y))
# [[11 6 4 3 3]
# [16 8 6 4 4]
# [21 11 7 6 5]
# [26 13 9 7 6]
# [31 16 11 8 7]]z = x ** np.full([1, 5], 2)
print(z)
print(np.power(x, np.full([5, 5], 2)))
# [[ 121 144 169 196 225]
# [ 256 289 324 361 400]
# [ 441 484 529 576 625]
# [ 676 729 784 841 900]
# [ 961 1024 1089 1156 1225]]
【例】
import numpy as npx = np.array([[11, 12, 13, 14, 15],[16, 17, 18, 19, 20],[21, 22, 23, 24, 25],[26, 27, 28, 29, 30],[31, 32, 33, 34, 35]])y = np.arange(1, 26).reshape([5, 5])
print(y)
# [[ 1 2 3 4 5]
# [ 6 7 8 9 10]
# [11 12 13 14 15]
# [16 17 18 19 20]
# [21 22 23 24 25]]z = x + y
print(z)
print(np.add(x, y))
# [[12 14 16 18 20]
# [22 24 26 28 30]
# [32 34 36 38 40]
# [42 44 46 48 50]
# [52 54 56 58 60]]z = x - y
print(z)
print(np.subtract(x, y))
# [[10 10 10 10 10]
# [10 10 10 10 10]
# [10 10 10 10 10]
# [10 10 10 10 10]
# [10 10 10 10 10]]z = x * y
print(z)
print(np.multiply(x, y))
# [[ 11 24 39 56 75]
# [ 96 119 144 171 200]
# [231 264 299 336 375]
# [416 459 504 551 600]
# [651 704 759 816 875]]z = x / y
print(z)
print(np.divide(x, y))
# [[11. 6. 4.33333333 3.5 3. ]
# [ 2.66666667 2.42857143 2.25 2.11111111 2. ]
# [ 1.90909091 1.83333333 1.76923077 1.71428571 1.66666667]
# [ 1.625 1.58823529 1.55555556 1.52631579 1.5 ]
# [ 1.47619048 1.45454545 1.43478261 1.41666667 1.4 ]]z = x // y
print(z)
print(np.floor_divide(x, y))
# [[11 6 4 3 3]
# [ 2 2 2 2 2]
# [ 1 1 1 1 1]
# [ 1 1 1 1 1]
# [ 1 1 1 1 1]]z = x ** np.full([5, 5], 2)
print(z)
print(np.power(x, np.full([5, 5], 2)))
# [[ 121 144 169 196 225]
# [ 256 289 324 361 400]
# [ 441 484 529 576 625]
# [ 676 729 784 841 900]
# [ 961 1024 1089 1156 1225]]
三角函数
numpy.sin(x, *args, **kwargs)
Trigonometric sine, element-wise.numpy.cos(x, *args, **kwargs)
Cosine element-wise.numpy.tan(x, *args, **kwargs)
Compute tangent element-wise.numpy.arcsin(x, *args, **kwargs)
Inverse sine, element-wise.numpy.arccos(x, *args, **kwargs)
Trigonometric inverse cosine, element-wise.numpy.arctan(x, *args, **kwargs)
Trigonometric inverse tangent, element-wise.
通用函数(universal function)通常叫作ufunc,它对数组中的各个元素逐一进行操作。这表明,通用函数分别处理输入数组的每个元素,生成的结果组成一个新的输出数组。输出数组的大小跟输入数组相同。
三角函数等很多数学运算符合通用函数的定义,例如,计算平方根的sqrt()
函数、用来取对数的log()
函数和求正弦值的sin()
函数。
【例】
import numpy as npx = np.linspace(start=0, stop=np.pi / 2, num=10)
print(x)
# [0. 0.17453293 0.34906585 0.52359878 0.6981317 0.87266463
# 1.04719755 1.22173048 1.3962634 1.57079633]y = np.sin(x)
print(y)
# [0. 0.17364818 0.34202014 0.5 0.64278761 0.76604444
# 0.8660254 0.93969262 0.98480775 1. ]z = np.arcsin(y)
print(z)
# [0. 0.17453293 0.34906585 0.52359878 0.6981317 0.87266463
# 1.04719755 1.22173048 1.3962634 1.57079633]y = np.cos(x)
print(y)
# [1.00000000e+00 9.84807753e-01 9.39692621e-01 8.66025404e-01
# 7.66044443e-01 6.42787610e-01 5.00000000e-01 3.42020143e-01
# 1.73648178e-01 6.12323400e-17]z = np.arccos(y)
print(z)
# [0. 0.17453293 0.34906585 0.52359878 0.6981317 0.87266463
# 1.04719755 1.22173048 1.3962634 1.57079633]y = np.tan(x)
print(y)
# [0.00000000e+00 1.76326981e-01 3.63970234e-01 5.77350269e-01
# 8.39099631e-01 1.19175359e+00 1.73205081e+00 2.74747742e+00
# 5.67128182e+00 1.63312394e+16]z = np.arctan(y)
print(z)
# [0. 0.17453293 0.34906585 0.52359878 0.6981317 0.87266463
# 1.04719755 1.22173048 1.3962634 1.57079633]
指数和对数
numpy.exp(x, *args, **kwargs)
Calculate the exponential of all elements in the input array.numpy.log(x, *args, **kwargs)
Natural logarithm, element-wise.numpy.exp2(x, *args, **kwargs)
Calculate2**p
for allp
in the input array.numpy.log2(x, *args, **kwargs)
Base-2 logarithm ofx
.numpy.log10(x, *args, **kwargs)
Return the base 10 logarithm of the input array, element-wise.
【例】The natural logarithm log
is the inverse of the exponential function, so that log(exp(x)) = x
. The natural logarithm is logarithm in base e
.
import numpy as npx = np.arange(1, 5)
print(x)
# [1 2 3 4]
y = np.exp(x)
print(y)
# [ 2.71828183 7.3890561 20.08553692 54.59815003]
z = np.log(y)
print(z)
# [1. 2. 3. 4.]
加法与乘法函数
numpy.sum(a[, axis=None, dtype=None, out=None, …])
Sum of array elements over a given axis.
通过不同的 axis
,numpy 会沿着不同的方向进行操作:如果不设置,那么对所有的元素操作;如果axis=0
,则沿着纵轴进行操作;axis=1
,则沿着横轴进行操作。但这只是简单的二位数组,如果是多维的呢?可以总结为一句话:++设axis=i
,则 numpy 沿着第i
个下标变化的方向进行操作++。
聚合函数 是指对一组值(比如一个数组)进行操作,返回一个单一值作为结果的函数。因而,求数组所有元素之和的函数就是聚合函数。ndarray
类实现了多个这样的函数。
【例】返回给定轴上的数组元素的总和。
import numpy as npx = np.array([[11, 12, 13, 14, 15],[16, 17, 18, 19, 20],[21, 22, 23, 24, 25],[26, 27, 28, 29, 30],[31, 32, 33, 34, 35]])
y = np.sum(x)
print(y) # 575y = np.sum(x, axis=0)
print(y) # [105 110 115 120 125]y = np.sum(x, axis=1)
print(y) # [ 65 90 115 140 165]
numpy.cumsum(a, axis=None, dtype=None, out=None)
Return the cumulative sum of the elements along a given axis.
【例】返回给定轴上的数组元素的累加和。
import numpy as npx = np.array([[11, 12, 13, 14, 15],[16, 17, 18, 19, 20],[21, 22, 23, 24, 25],[26, 27, 28, 29, 30],[31, 32, 33, 34, 35]])
y = np.cumsum(x)
print(y)
# [ 11 23 36 50 65 81 98 116 135 155 176 198 221 245 270 296 323 351
# 380 410 441 473 506 540 575]y = np.cumsum(x, axis=0)
print(y)
# [[ 11 12 13 14 15]
# [ 27 29 31 33 35]
# [ 48 51 54 57 60]
# [ 74 78 82 86 90]
# [105 110 115 120 125]]y = np.cumsum(x, axis=1)
print(y)
# [[ 11 23 36 50 65]
# [ 16 33 51 70 90]
# [ 21 43 66 90 115]
# [ 26 53 81 110 140]
# [ 31 63 96 130 165]]
numpy.prod(a[, axis=None, dtype=None, out=None, …])
Return the product of array elements over a given axis.
【例】返回给定轴上数组元素的乘积。
import numpy as npx = np.array([[11, 12, 13, 14, 15],[16, 17, 18, 19, 20],[21, 22, 23, 24, 25],[26, 27, 28, 29, 30],[31, 32, 33, 34, 35]])
y = np.prod(x)
print(y) # 788529152y = np.prod(x, axis=0)
print(y)
# [2978976 3877632 4972968 6294624 7875000]y = np.prod(x, axis=1)
print(y)
# [ 360360 1860480 6375600 17100720 38955840]
numpy.cumprod(a, axis=None, dtype=None, out=None)
Return the cumulative product of elements along a given axis.
【例】返回给定轴上数组元素的累乘。
import numpy as npx = np.array([[11, 12, 13, 14, 15],[16, 17, 18, 19, 20],[21, 22, 23, 24, 25],[26, 27, 28, 29, 30],[31, 32, 33, 34, 35]])
y = np.cumprod(x)
print(y)
# [ 11 132 1716 24024 360360 5765760
# 98017920 1764322560 -837609728 427674624 391232512 17180672
# 395155456 893796352 870072320 1147043840 905412608 -418250752
# 755630080 1194065920 -1638662144 -897581056 444596224 -2063597568
# 788529152]y = np.cumprod(x, axis=0)
print(y)
# [[ 11 12 13 14 15]
# [ 176 204 234 266 300]
# [ 3696 4488 5382 6384 7500]
# [ 96096 121176 150696 185136 225000]
# [2978976 3877632 4972968 6294624 7875000]]y = np.cumprod(x, axis=1)
print(y)
# [[ 11 132 1716 24024 360360]
# [ 16 272 4896 93024 1860480]
# [ 21 462 10626 255024 6375600]
# [ 26 702 19656 570024 17100720]
# [ 31 992 32736 1113024 38955840]]
四舍五入
numpy.around(a, decimals=0, out=None)
Evenly round to the given number of decimals.
【例】将数组舍入到给定的小数位数。
import numpy as npx = np.random.rand(3, 3) * 10
print(x)
# [[6.59144457 3.78566113 8.15321227]
# [1.68241475 3.78753332 7.68886328]
# [2.84255822 9.58106727 7.86678037]]y = np.around(x)
print(y)
# [[ 7. 4. 8.]
# [ 2. 4. 8.]
# [ 3. 10. 8.]]y = np.around(x, decimals=2)
print(y)
# [[6.59 3.79 8.15]
# [1.68 3.79 7.69]
# [2.84 9.58 7.87]]
numpy.ceil(x, *args, **kwargs)
Return the ceiling of the input, element-wise.numpy.floor(x, *args, **kwargs)
Return the floor of the input, element-wise.
【例】
import numpy as npx = np.random.rand(3, 3) * 10
print(x)
# [[0.67847795 1.33073923 4.53920122]
# [7.55724676 5.88854047 2.65502046]
# [8.67640444 8.80110812 5.97528726]]y = np.ceil(x)
print(y)
# [[1. 2. 5.]
# [8. 6. 3.]
# [9. 9. 6.]]y = np.floor(x)
print(y)
# [[0. 1. 4.]
# [7. 5. 2.]
# [8. 8. 5.]]
杂项
numpy.clip(a, a_min, a_max, out=None, **kwargs):
Clip (limit) the values in an array.
Given an interval, values outside the interval are clipped to the interval edges. For example, if an interval of [0, 1]
is specified, values smaller than 0 become 0, and values larger than 1 become 1.
【例】裁剪(限制)数组中的值。
import numpy as npx = np.array([[11, 12, 13, 14, 15],[16, 17, 18, 19, 20],[21, 22, 23, 24, 25],[26, 27, 28, 29, 30],[31, 32, 33, 34, 35]])
y = np.clip(x, a_min=20, a_max=30)
print(y)
# [[20 20 20 20 20]
# [20 20 20 20 20]
# [21 22 23 24 25]
# [26 27 28 29 30]
# [30 30 30 30 30]]
numpy.sqrt(x, *args, **kwargs)
Return the non-negative square-root of an array, element-wise.numpy.square(x, *args, **kwargs)
Return the element-wise square of the input.
【例】
import numpy as npx = np.arange(1, 5)
print(x) # [1 2 3 4]y = np.sqrt(x)
print(y)
# [1. 1.41421356 1.73205081 2. ]y = np.square(x)
print(y)
# [ 1 4 9 16]
numpy.absolute(x, *args, **kwargs)
Calculate the absolute value element-wise.numpy.abs(x, *args, **kwargs)
is a shorthand for this function.
【例】
import numpy as npx = np.arange(-5, 5)
print(x)
# [-5 -4 -3 -2 -1 0 1 2 3 4]y = np.abs(x)
print(y)
# [5 4 3 2 1 0 1 2 3 4]y = np.absolute(x)
print(y)
# [5 4 3 2 1 0 1 2 3 4]
当前活动
我是 终身学习者“老马”,一个长期践行“结伴式学习”理念的 中年大叔。
我崇尚分享,渴望成长,于2010年创立了“LSGO软件技术团队”,并加入了国内著名的开源组织“Datawhale”,也是“Dre@mtech”、“智能机器人研究中心”和“大数据与哲学社会科学实验室”的一员。
愿我们一起学习,一起进步,相互陪伴,共同成长。
后台回复「搜搜搜」,随机获取电子资源!
欢迎关注,请扫描二维码:
相关文章:

SAXParserFactory之求解
SAX是Simple API for XML的简称,在Android里面提供对XML文件的解析接口方法,如果给我们一个XML文件,要求把里面我们关心的数据解析出来,我们就可以使用SAX技术,在具体使用中,会对XML文件的每一个字符逐一读取并出发相应…

学习Java知识应该注意哪些基础原则
想要做java程序猿,学习起来没有那么快的,尤其是零基础学员,java技术在学习的过程中是比较枯燥的,下面小编就为大家详细的介绍一下学习Java知识应该注意哪些基础原则,方便大家在学习的时候能够更加有效率! 学习Java知识…

Numpy入门教程:05. 逻辑函数
背景 什么是 NumPy 呢? NumPy 这个词来源于两个单词 – Numerical和Python。其是一个功能强大的 Python 库,可以帮助程序员轻松地进行数值计算,通常应用于以下场景: 执行各种数学任务,如:数值积分、微分、…

git获取指定release版本代码
首先手里必须有release的版本的备份出来的/.repo/manifests/default.xml文件,该文件记录了每个git库的在该版本下的具体的版本情况,整个代码的sync都是依据他来的; 1、repo sync 将本地代码更新至最新; 2、将手里的manifests.xml&…

【内网福音】如何离线部署Rancher
2019独角兽企业重金招聘Python工程师标准>>> 对于在公司内网环境中、无法访问互联网的用户而言,离线安装部署Rancher是解决问题的关键。本文是Rancher离线部署教程,专为内网用户排坑解难。 版本说明 OS:Centos7.3 Docker version:…

JAVA工资高吗
JAVA工资高吗?很多人都是非常关注这个问题的,近几年,java技术在互联网行业有了自己的一席之地,越来越多的人都投身到java技术行业,下面我们来看看详细的介绍。 JAVA工资高吗? 近年来,在美国、加拿大、澳大利亚、新加坡等发达国家…

Numpy入门教程:06. 排序,搜索和计数
背景 什么是 NumPy 呢? NumPy 这个词来源于两个单词 – Numerical和Python。其是一个功能强大的 Python 库,可以帮助程序员轻松地进行数值计算,通常应用于以下场景: 执行各种数学任务,如:数值积分、微分、…

活动目录在构建核心过程中的八个关键点(下)
活动目录是一个面向Windows Server级别的目录服务。在之前的博客文章中介绍了活动目录设计中需要遵循的七个原则,今天在这里讲解有关《活动目录构建核心关键点》。 全文请见专题:http://os.51cto.com/art/201104/254054.htm 5. LDAP协议简介 LDAP的英文全…

smarty变量调节器--count_words[计算词数]
计算变量里的词数 。 Example 5-7. count_words <?php$smarty->assign(articleTitle, Dealers Will Hear Car Talk at Noon.);?>Where template is:{$articleTitle}{$articleTitle|count_words}This will output:Dealers Will Hear Car Talk at Noon.7 See also cou…

如何开发属于自己的第一个Java程序
学习java技术都是循序渐进的,搭建好了Java开发环境之后,下面就来学习一下如何开发Java程序。为了让初学者更好地完成第一个Java程序,接下来小编通过几个步骤进行逐一讲解。 1.编写Java源文件 在D盘根目录下新建一个test文件夹,并在…

Numpy入门教程:07. 随机抽样
背景 什么是 NumPy 呢? NumPy 这个词来源于两个单词 – Numerical和Python。其是一个功能强大的 Python 库,可以帮助程序员轻松地进行数值计算,通常应用于以下场景: 执行各种数学任务,如:数值积分、微分、…

如何成为一个Android高手
很多Android开发者已经度过了初级、中级,如何成为一个Android高手呢? eoeAndroid就各个级别的程序员应该掌握哪些内容作为下面分类. 一、初级 1. 拥有娴熟的Java基础,理解设计模式,比如OOP语言的工厂模式要懂得. 2. 掌握Android U…

云终端处理器——Atom
由于上周展会的缘故,开始对云终端【I】处理器产生兴趣,接下来在“物理层”【II】来理解下X86-Atom,ARM,MIPS三种处理器,这是第一篇,主Atom Intel公司的官网简单介绍了一句 “英特尔 凌动【III】 处理器&am…

Java培训的学费标准是多少
很多想要进入到互联网行业的小伙伴都会选择java这门编程语言,java编程语言技术在互联网公司是起着非常重要的作用的,那么如今市面上的java培训机构有很多,选择报Java培训的学费标准是多少呢?来看看下面的详细介绍。 Java培训的学费…

Numpy入门教程:08. 集合操作
背景 什么是 NumPy 呢? NumPy 这个词来源于两个单词 – Numerical和Python。其是一个功能强大的 Python 库,可以帮助程序员轻松地进行数值计算,通常应用于以下场景: 执行各种数学任务,如:数值积分、微分、…

iPhone开发技巧之工具篇(4)--- 使用afconvert转换WAV文件
转载自:http://www.yifeiyang.net/iphone-development-skills-of-tool-papers-4-wav-file-conversion-using-afconvert/ 程序中经常使用 .WAV 的音效文件,虽然可以直接使用它,但是最好转换为 apple 推荐的 .CAF 格式。 这个时候我们就可以使用…

SQLite与pandas
以下链接对SQLite使用方法总结的很棒: http://www.cnblogs.com/yuxc/archive/2011/08/18/2143606.html 有关利用pandas读写QSLite的内容,可参考以下链接: http://pandas.pydata.org/pandas-docs/stable/generated/pandas.read_sql.html http:…

零基础学习java,这些书一定要看!
学习java技术除了看视频,看书也是非常重要的,尤其是零基础同学,本文包含学习Java各个阶段的书籍推荐,史上最全,学习Java,没有书籍怎么行,就好比出征没带兵器一个道理,这些书籍整理出…

Numpy入门教程:练习作业01
序言 什么是 NumPy 呢? NumPy 这个词来源于两个单词 – Numerical和Python。其是一个功能强大的 Python 库,可以帮助程序员轻松地进行数值计算,通常应用于以下场景: 执行各种数学任务,如:数值积分、微分、…

转乱码UTF8和UTF-8网页编码
http://www.lovelucy.info/utf8-vs-utf-8.html#more-794 一、遇到的问题 曾经被字符集间复杂的转换搞怕了,正好新项目要求国际化,需要能够显示多种语言,于是一开始就规定统统使用 UTF-8 编码。 所有代码文件使用 UTF-8 编码存盘MySQL数据库所…

linux管道的执行顺序
最近有个疑问,netstat -antup|head -500 类似这条命令中,是netstat 执行完然后截取前500条记录还是,netstat 与head 并行执行,netstat 执行完500条就不再继续? 最终答案由酷学园darkdanger大大提供: 唔…

为什么学习Python数据分析
为什么学习Python数据分析?这是很多人都比较关注的一个问题,Python编程语言近几年在互联网行业是非常火爆的,尤其是在人工智能这一领域,它会大大的提高我们的工作效率等等,具体来看看下面的详细介绍就知道了。 为什么学习Python数…

Python自动化开发学习6
引子 假设我们要在我们的程序里表示狗,狗有如下属性:名字、品种、颜色。那么可以先定义一个模板,然后调用这个模板生成各种狗。 def dog(name,d_type,color):data {name:name,d_type:d_type,color:color}return data d1 dog(小七,拉布拉多,…

Numpy入门教程:09. 输入和输出
背景 什么是 NumPy 呢? NumPy 这个词来源于两个单词 – Numerical和Python。其是一个功能强大的 Python 库,可以帮助程序员轻松地进行数值计算,通常应用于以下场景: 执行各种数学任务,如:数值积分、微分、…

第二语言综合征
前些天在看一本书,温伯格的《理解专业程序员》,其中提到有的程序员得了第二语言综合征——在学习第三、第四门语言的时候很容易,但是学习第二门简直能要了他们的命。我当时就确定我患了这个毛病,因为我一直想了解Java语言…

Python文件操作:finally子句的使用
finally子句与try-except语句连用时,无论try-except是否捕获到异常,finally子句后的代码都要执行,其语法格式如下: try: 可能出错的语句 ......except: 出错后的执行语句finally: 无论是否出错都会执行的语句 Python在处理文件时&…

Numpy入门教程:练习作业02
背景 什么是 NumPy 呢? NumPy 这个词来源于两个单词 – Numerical和Python。其是一个功能强大的 Python 库,可以帮助程序员轻松地进行数值计算,通常应用于以下场景: 执行各种数学任务,如:数值积分、微分、…

PowerShell 导入 SQL Server 的 PS 模块
接触过UNIX或者Linux 的朋友都知道此类系统有着功能强大、无所不能的壳程序,称之为Shell。微软公司于2006年第四季度正式发布PowerShell,它的出现标志着, 微软公司向服务器领域迈出了重要的一步, 不仅提供简便的图形化操作界面,同时提供类似于Unix, Linu…

ARM嵌入式操作系统启动
任何一个操作系统的启动都至少关注两个方面:1,程序运行栈的初始化。2,处理器外设的初始化。 在ARMv6以及以前的体系结构中,定义了七种模式分别为&…

Html5 aside标签的用法和作用
aside元素用来定义当前页面或者文章的附属信息部分,它可以包含与当前页面或主要内容相关的引用、侧边栏、广告、导航条等其他类似的有别于主要内容的部分。 aside元素的用法主要分为两种。 ● 被包含在article元素内作为主要内容的附属信息。 ● 在article元素之外使…