资源描述:
《python简介入门全》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、Python简介WhyPython?▲简单易学,与matlab类似▲跨平台▲开源,完全免费▲可利用的扩展库丰富▲f2py:将fortran代码转化为扩展库如何使用▲交互式:与matlab一样,▲写好代码(命名为name.py)然后在python的终端中importname▲写好代码命令行形式运行:pythontest.py(推荐使用Enthought公司发行的版本,集成了大量的科学计算扩展库,包括numpy,scipy,matplotlib)https://www.enthought.com/变量类型▲常用:整数,浮点,逻辑,字符串a,b,c=1,2,3ad,bc=bc,ad▲特有:
2、列表(list)、字典(dictionary)、元表列表列表是用[]表示的,列表具有可嵌套性列表举例:name=["Cleese","John"]x=[[1,2,3],[y,z],[[1,2],[3,4]]]访问列表方式meal=['egg','apple','milk','tofu','bacon']▲指针(indexing):printmeal[1]#该语句将显示'apple'meal[0]='egger'#将第一个元素替换成‘egger’Note:在python中,第一个元素的指针为0,第二个为1,以此类推,这与C语言是一样的;同时,指针也可以用负数。meal[-1]就代表倒数
3、第一个元素'bacon',以此类推访问列表方式meal=['egg','apple','milk','tofu','bacon']▲切片(slicing):(用指针截取某一段列表)printmeal[1:3]#该句将显示applemilkNote:为什么不显示tofu?因为在python切片截取列表的方法中,表示结尾的指针是不被包括在截取的切片当中的!!!meal=['egg','apple','milk','tofu','bacon']meal[:3](即为[egg','apple','milk'])截取从开始到第三个元素meal[3:](即为['tofu','bacon'])截取
4、从第四个元素到结尾meal[:]截取全部元素meal[0:4:2](即为['egg','milk'])从开始到第四个元素,隔2取一次字典▲字典用{}表示,它与列表非常类似▲字典结构:person={'firstname':"Robin",'lastname':"Hood",'occupation':"Scoundrel"}'firstname'称为‘键’(key)键的冒号后边的为键值,这里"Robin"即为键值▲字典访问:printperson['firstname']#显示Robin控制语句if语句:x=10ifx<5or105、x+100else:print"Thevalueisbad"print"thisisanotherpart"Note:▲语句前不能随便打空格或者tab,因为在python中缩进也是语法的一部分。▲同一个程序块缩进的距离是一样的。▲缩进的结束就代表程序块的结束for循环foriin[1,2,3,4,5]:print"Thisisiterationnumber",i循环变量i的范围是由一个列表来控制的内置函数range能生成规则的等差函数,range(7)会生成列表[0,1,2,3,4,5,6]while循环x=10whilex>=0:print"xisstillnotnegative.
6、"x=x-1自定义函数python允许自定义函数defsquare(x):#def后面为函数名,括号内为参数returnx*x#若函数有返回值,则要使用returnprintsquare(2)#调用函数方式为函数名(参数)numpynumpy:数组针对数组的函数矩阵运算功能与matlab一样强大数组基本▲创建数组importnumpyasnpa=np.array([1,2,3,4,5,6])b=np.zeros((2,3))c=np.ones((3,3))d=np.arange(0,30,3)a=np.array([1,2,3],[4,5,8])b=np.array([3,2,1],
7、[5,4,8])a+b,a/b,a*b表示对应元素的数组运算,而不是矩阵运算矩阵运算a=np.array([1,2,3],[4,5,8])a.T#表示a的转置a[a>3]=np.nan#替换值np.inner(a,a.T)#计算a与a的转置的内积np.flipud(a),np.fliplr(a)(numpy与matlab对比可以访问http://mathesaurus.sourceforge.net/matlab-numpy.html)谢谢!