Python进行数组合并的方法

Python015

Python进行数组合并的方法,第1张

python的数组合并在算法题中用到特别多,这里简单总结一下:

假设有a1和a2两个数组:

a1=[1,2,3]

a2=[4,5,6]

1. 直接相加

合并后赋值给新数组a3

a3 = a1 + a2

2. extend

调用此方法,a1会扩展成a1和a2的内容 a1.extend(a2)

3. 列表表达式

先生成新的二维数组) a3 = [a1, a2])

列表推导形成新的数组) a4 = [ y for a in a3 for y in a ])

下面分别测试下三种数组合并方式的性能

分别输出:

17.2916171551

20.8185400963

55.1758739948

可以看出:在数据量大的时候,第一种方式的性能要高出很多。

这个如果用numpy我不怎么熟,我觉得用pandas是常态- -,代码如下:

import pandas as pd

a = [[1,2,3,4],[1,2,3,4],[1,2,3,4],[1,2,3,4],[1,2,3,4]]

b=pd.DataFrame(a)

print(list(b.sum()))

import numpy

a = [1, 2, 3, 4]

b = [5, 6, 7, 8]

a_array = numpy.array(a)

b_array = numpy.array(b)

c_array = a_array + b_array

d_array = a_array - b_array

print c_array

print d_array

扩展资料:  

算术运算结果的数字类型与运算数的类型有关。进行除法(/)运算时,不管商为整数还是浮点数,运算结果始终为浮点数。要得到整型的商,需要用双斜杠(//)做整除,且除数必须是整型的。对于其他的运算,只要任一运算数为浮点数,运算结果就是浮点数。Python算术运算的基础使用方法如下所示。

num_int = 4  

num_float = 4.0

print('整数与浮点数的和为:', num_int + num_float)   

#Out[1]: 整数与浮点数的和为:8.0   

print('整数与浮点数的差为:', num_int - num_float)

#Out[2]: 整数与浮点数的差为: 0.0   

print('整数与浮点数的积为:', num_int * num_float)

#Out[3]: 整数与浮点数的积为:16.0   

print('浮点数与整数的商为:', num_float / num_int)

#Out[4]: 浮点数与整数的商为:1.0   

print('浮点数对整数取模结果为:', num_float % num_int)

#Out[5]: 浮点数对整数取模结果为: 0.0 

print('浮点数的整数次幂为:', num_float ** num_int)

#Out[6]: 浮点数的整数次幂为:256.0