python科学计算模块有什么_Python科学计算—numpy模块总结(1)

作为一个本科学数学专业,目前研究非线性物理领域的研究僧。用什么软件进行纯科学计算好,Fortran永远是第一位的;matlab虽然很强大,可以很容易的处理大量的大矩阵,但是求解我们的模型(有时可能是几万个方程,而且需要演化很长时间才能到达稳态)使用matlab计算是很慢的。Python相对matlab来说,在速度上处于Fortran与matlab中间。

Python处理科学计算只是它很小的一部分功能.python是交互式解释语言,开源的,拥有大量的第三方模块,可以跨平台,网页爬虫,数据挖掘,数据库应用,多媒体应用,Web开发,电子游戏的应用等;对于我这个非计算机专业的,不打算读博,未来想进入互联网的学渣来说,学习python语言是一个很好的选择。

# -*- coding: utf-8 -*-

"""

Created on Tue Nov 01 15:38:10 2016

科学计算,模块numpy,

@author: whb

"""

import numpy

"""

一维数组的建立,索引与切片

"""

a=numpy.arange(5)

arr=numpy.array([numpy.arange(4),numpy.arange(4)])

a=arange(5) #得到一个5个元素的数组;

b=a[1:]#得到第1个元素以后的元素

a[::-1]#反转

"""

多维数组

"""

'建立'

#方法一

two_d_array=array([arange(5),4*arange(5)])

tree_d_array=array([[arange(5),4*arange(5)],[arange(5),4*arange(5)]])

#方法二:使用reshape()与arange()函数结合

two=arange(6).reshape(2,3)

tree=arange(18).reshape(2,3,3)

'操作(索引,复制,删除,替换),展开'

two[:,1]#与matlab相同

two[:,1]=[3,5] #复制

tree[1,...] #得到第二层所有的元素

tree[1,1,:] #得到第二层的第二行的元素

tree[::-1]#将一层的元素与第二层的元素交换

d=tree.ravel() #ravel函数,只是展开,显示。

tree_zk=tree.flatten() #flatten()函数会请求内存保留结果

"""

数组的组合:水平、垂直、深度组合。(vstack,dstack,hstack,column_stack,row_stack)这些函数都是以元组

作为参数

"""

A=arange(9).reshape(3,3)

B=2*A #2乘以A数组中的每一个元素

"水平组合"

A_B=hstack((A,B)) #(A,B)组成一个元组传递给函数hstack()

"垂直组合"

A_B_V=vstack((A,B))

"深度组合"

A_B_d=dstack((A,B))

"""

数组切割:split =hsplit,vsplit,dsplit;

"""

A_split=hsplit(A,3)

A_sp2=vsplit(A,3)

A.tolist() #转为列表

"""

文件读写

"""

eye_1=numpy.eye(2) #创建一个单位矩阵2*2

i=range(17)

numpy.savetxt("w.txt",i)#保存一个数组

##方法二

f=open('f.txt','a') # w,r,a(写入、读取、追加)

for j in range(0,100):

f.write(str(j)+'\n')

f.close()

#读取文件里的内容

#方法一

read_file=open('f.txt','r')

aa=read_file.read()

##方法二loadtxt()函数

tttt=numpy.loadtxt('f.txt') #得到一个数组

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值