Python快速笔记-2-Numpy

本文介绍了Numpy的基础用法,包括数组创建、特殊数组、序列数组等,并演示了数组索引、运算及拷贝技巧。同时,文章还详细讲解了矩阵的创建、转置、乘法以及求逆等关键操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

中文
#coding=utf-8

导入Numpy

import numpy as np
数组基础

def test_my_numpy_base():
    
# 1 创建数组
    print "创建数组:"
    a = np.array([[1,2,4.0],[3,6,9]])
    print a.ndim    # 查看行数
    print a.shape   # 查看数组的维数,返回(n,m), 其中 n 为行数,m 为列数
    print a.dtype   # 查看元素的类型

# 2 特殊数组
    '''
        Numpy的特殊数组主要有以下几种:
        zeros数组:全零数组,元素全为0;
        ones数组:全1数组,元素全为1;
        empty数组:空数组,元素全近似为0;
    '''
    print "特殊数组:"
    print np.zeros((2,3), dtype=np.uint8)
    print np.ones((3,4), dtype=np.uint8)
    print np.empty((3,2), dtype=np.uint8)

# 3 序列数组
    print "序列数组:"
    print np.arange(1,20,5) #[ 1  6 11 16]

# 4 数组索引
    print "数组索引:"
    indexArray = np.array([[1,2,4.0],[3,6,9]])
    print indexArray[0] #第一项所有
    print a[:,1] #所有的项的第二个数
    print a[0,2] #第一项第三个数

# 5 数组运算
    print "数组运算:"
    aCaculate = np.array([1,2,3])
    bCaculate = np.array([4,5,6])
    print aCaculate
    print bCaculate
    print "+:", aCaculate+bCaculate
    print "-:", aCaculate-bCaculate
    print "*:", aCaculate*bCaculate
    print "/:", aCaculate/bCaculate
    print "**:", aCaculate**bCaculate
    print "dot:", np.dot(aCaculate, bCaculate) #点乘相加
    print "a max", aCaculate.max()
    print "a min", aCaculate.min()
    print "a sum", aCaculate.sum()

# 6 数组拷贝
    '''
        数组的拷贝分为浅拷贝和深拷贝两种,浅拷贝通过数组变量的复制完成,深拷贝使用数组对象的copy方法完成。
    '''
    print "数组拷贝:"
    
    print "=浅拷贝=" #浅拷贝只拷贝数组的引用,如果对拷贝对象修改。原数组也将修改。
    aShallowCopy = np.ones((2,3))
    print "Origin a:", aShallowCopy
    bShallowCopy = aShallowCopy
    print "b the same with a", bShallowCopy
    bShallowCopy[1, 2] = 9
    print "b Change, and influence a", aShallowCopy

    print "=深拷贝=" #深拷贝会复制一份和原数组一样的数组,但他们在内存中是分开存放的,所以改变拷贝数组,原数组不会改变。
    aDeepCopy = np.ones((2,3))
    bDeepCopy = aDeepCopy.copy()
    bDeepCopy[1, 2] = 9
    print "just b change"
    print "a :", aDeepCopy
    print "b :", bDeepCopy

    return
#end of test_my_numpy_base

矩阵

def test_my_numpy_matrix():
    
# 1 创建矩阵
    print "创建矩阵:"
    A = np.matrix([[1.0,2.0],[3.0,4.0]])
    print "A:", A
    print type(A) #查看A的类型
    
# 2  矩阵运算
    print "转置:"
    print A.T
    
    print "矩阵乘法:"
    B = np.matrix([[3.0],[5.0]])
    print "B:", B
    print "A * B:", A * B
    
    print "逆矩阵:"
    print A.I
    
    print "解线性方程组:"
    print np.linalg.solve(A, B)
    
    return
#end of test_my_numpy_matrixe





Python学习笔记》是由皮大庆编写的一本关于Python语言学习的教材。在这本书中,作者详细介绍了Python语言的基础知识、语法规则以及常用的编程技巧。 首先,作者简要介绍了Python语言的特点和优势。他提到,Python是一种易于学习和使用的编程语言,受到了广大程序员的喜爱。Python具有简洁、清晰的语法结构,使得代码可读性极高,同时也提供了丰富的库和模块,能够快速实现各种功能。 接着,作者详细讲解了Python的基本语法。他从变量、数据类型、运算符等基础知识开始,逐步介绍了条件语句、循环控制、函数、模块等高级概念。同时,作者通过大量的示例代码和实践案例,帮助读者加深对Python编程的理解和应用。 在书中,作者还特别强调了编写规范和良好的编程习惯。他从命名规范、注释风格、代码缩进等方面指导读者如何写出清晰、可读性强的Python代码。作者认为,良好的编程习惯对于提高代码质量和提高工作效率非常重要。 此外,作者还介绍了Python的常用库和模块。他提到了一些常用的库,如Numpy、Pandas、Matplotlib等。这些库在数据处理、科学计算、可视化等领域有广泛的应用,帮助读者更好地解决实际问题。 总的来说,《Python学习笔记》是一本非常实用和全面的Python学习教材。通过学习这本书,读者可以系统地学习和掌握Python编程的基础知识和高级应用技巧,为以后的编程学习和工作打下坚实的基础。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值