numpy的简单使用和变形等操作

代码示例:

import numpy as np

#一维数组简单使用
my_list1 = [5,6,7,8]
my_np1 = np.array(my_list1)
print(type(my_np1))    #打印:<class 'numpy.ndarray'>
print(my_np1)    #打印:[5 6 7 8]
print(my_np1.shape)    #打印(4,),代表数组形状(行,列),本例代表4行1列

my_np2 = np.arange(1,10,2)
print(type(my_np2))    #打印<class 'numpy.ndarray'>
print(my_np2)    #打印[1 3 5 7 9]


#二维数组简单使用
my_list2 = [
    [1,4,7],
    [2,5,8],
    [3,6,9]
]
my_np3 = np.array(my_list2)
print(type(my_np3))    #打印<class 'numpy.ndarray'>
print(my_np3)  
'''
打印:
[[1 4 7]
 [2 5 8]
 [3 6 9]]
'''
print(my_np3.shape)    #打印(3, 3)
print(my_np3.ndim)    #获取数组的维度,打印2
print(my_np3.size)    #获取元素的个数,打印9

my_np4 = np.array([[1,2,3,4],[5,6,7,8]]) 
print(my_np4)
'''
打印:
[[1 2 3 4]
 [5 6 7 8]]
'''
my_np4.shape = (4,2)
print(my_np4)
'''
打印:
[[1 2]
 [3 4]
 [5 6]
 [7 8]]
'''

my_np5 = np.array([[1,2,3,4],[5,6,7,8]])
my_np5_new = my_np5.reshape(4,2)
print(my_np5)
'''
打印:
[[1 2 3 4]
 [5 6 7 8]]
'''
print(my_np5_new)
'''
打印:
[[1 2]
 [3 4]
 [5 6]
 [7 8]]
'''
#shape和reshape的区别在于shape更改数组本身,reshape创建一个新的数组
my_np6 = np.array([[1,2,3,4],[5,6,7,8]])
my_np6_new = my_np6.reshape((8,),order='F')
# 默认为‘C’以行为主的顺序展开,‘F’(Fortran风格)以列的顺序展开
print(my_np6_new)    #打印[1 5 2 6 3 7 4 8]
my_np6_new2 = my_np6.flatten(order='C')    #同reshape((8,),order='C')
print(my_np6_new2)

#运算
my_np7 = np.array([[1,2,3,4],[5,6,7,8]])
print(my_np7*2)
'''
打印:
[[ 2  4  6  8]
 [10 12 14 16]]
'''

#转换为列表
my_np8 = np.array([[1,2,3,4],[5,6,7,8]])
my_list8 = my_np8.tolist()
print(type(my_list8))    #打印<class 'list'>
print(my_list8)    #打印[[1, 2, 3, 4], [5, 6, 7, 8]]

猜你喜欢

转载自blog.csdn.net/caoxinjian423/article/details/111990761