教你学会python_手把手教你学python第一讲

c3612d858d205a7173c54a442d1cdb0c8f957cb6.jpg

python最重要的就是缩进,因为它没有大括号和end这样的结束标志,只能通过缩进来匹配语句。

6a92423fb502efe02462abd97f86fad87fafde6e.png

缩进可以按Tab或者空格但是最好只用一种形式并习惯,并且在判断或者循环语句后面加:,下一行会自动为你缩进,十分方便。

然后来说一下目前学过的python的变量。第一个整型,它包含了c语言里的int和long int,需要注意的是,240a78d8b65c5618045db03ded743a584da7f2a5.png

int是截断处理,不是四舍五入。要想四舍五入34522c2ed203c23ff3ef7128ac60e13edde5fe96.png

下一个是浮点型,就是带有小数点,就叫浮点型。浮点型可以用科学计数法表示29ba4d66e4720d50047caed1e5b36846f88075cf.png

float可以将字符串和int转换为floatce0e469314a8030c2a8d1337a805ffd38671f4f1.png

还有布尔型,这里用的是正逻辑。True代表1,False代表0,bool值还可以加减乘除。a5ed95f350ea89143fd57bc487db5acb8c6932ec.png

还有字符串型,用单引号或者双引号括起来。下面是几个例子ae1c14e9a40de082d2dcc39a89cb8f78ef20902f.png

str可以把int,float转为字符串ab0b450c4e2f3a963ae8f6f6549a8b321c229027.png

灵活的引用让“”和‘’打出来更容易,不需要转义字符,还有一种方法是为了打出来\

de092ac79066d3c34678df1cf33458791e264991.png

加个r就不会把\n识别为换行,它会加上一个\转义190e20072b9a757144156257af63ddd1cb530f09.png

但是要想在末尾加上\就必须要这样做9c6bcc25e0e992133f8d0c12b9712066036de3a5.png

字符串的连接可以用+也可以不用直接连上31975386a12b277825d62f27a03dacf5bcfeddfa.png

还有*可以用来复制字符,但是会打在同一行44c34dfe6d1cbff40007037f0b7da65931ddc0ac.png

这里要说一下print这个函数还有python一行写多个语句和一个语句写多行的问题bc967b6ecf1ab4455f885bcb47c0c550bc6a1bf4.png

多个语句写一行要用;隔开,逗号不可以随便用。还有就是两个print打印出来一般都是自动换行的。要想不换行要么用*,还可以用,end=“

64bf3fd5e89f5b5366bc870cba84b4d84ab74646.png

不加逗号会报错的,这里再说一下window里Alt加P是回到上一条语句,Alt加N是下一条,这不像matlab里按上下就好,比较麻烦。还有就是一句多行

1e26c8870c72cd782b7562f4af7770c05f78e6e7.png

用\隔开,还有一种三引号字符串多行的用法497140ccf37e8fff800e2d6267f0087bcaf1d654.png

5028631d24aa9f7d01386883b4bc1c28543ec28f.png

ddfaf4b8182eccc48aea25c34b482c26e16a1d77.png

这样也行但是麻烦。这里要说明,所有的标点必须是英文的,还有变量是区分大小写的。字符串有很多BIF

s为字符串

s.isalnum() 所有字符都是数字或者字母,为真返回 Ture,否则返回 False。

s.isalpha() 所有字符都是字母,为真返回 Ture,否则返回 False。

s.isdigit() 所有字符都是数字,为真返回 Ture,否则返回 False。

s.islower() 所有字符都是小写,为真返回 Ture,否则返回 False。

s.isupper() 所有字符都是大写,为真返回 Ture,否则返回 False。

s.istitle() 所有单词都是首字母大写,为真返回 Ture,否则返回 False。

s.isspace() 所有字符都是空白字符,为真返回 Ture,否则返回 False。

例如:703888951ef4270a575994b7e660cdbf78c64d9d.png

下面介绍列表,列表比数组强大的多459906101b39ba959f53222193bfa4ab079f3eb5.png

列表里可以有多种类型,还可以列表嵌套,需要注意元素索引从0开始,matlab从1开始。调用列表元素和C语言里调用多维数组一样20ed230fbf947f56a8f69c7395dfb61fbc9b31c3.png

列表有很多操作,添加元素有以下方法,第一种用+,但是必须都是列表才能加,并且a列表是不变的5c5f75f64a81163d10e2de4025a904621d379496.png

二用append,extend,insert改变了a,他们是bif也就是内置函数de26cf674c261f5d3983b4a0c55f3dfddbf8c0ea.png

append和insert是添加元素,而extend是扩展列表,括号里参数是列表,insert有2个参数,第一个是列表索引。

删除列表231e4a59ccc770d547de46efd2d37f1b978ee915.png

remove里只能是元素的值,并且只删除了索引最小的3,del可以分片删除,分片用法跟matlab有点像,pop可以指定一个元素出栈07e4b05272c7384690688d52e44c3b822ad622d8.png

注意[0:5]不包括5。d49f53d784ae25eb0221be1cb4f4a1794c5a4d82.png

列表元素个数可以用count,倒过来可以用reverse,排序可以用sort,删除还可以用clear复制可以用copyc3d8e5fe171e97e4b777f46d7c877c007a82d0e3.png

clear,copy都是没有参数的,只能对整个列表操作

变量明明规则也是字母下划线数字,不能以数字开头,但是还可以用中文命名。bfc70b9050a4610a66a5f8dee94998a6fc1b224f.png

算术运算与c语言基本相同,除了**代表幂,\\代表整除26aba1ca884c284a90383e0d2ed60cd6d5623399.png

逻辑运算符是not,and和 or0aebd8fec73d2fea2bfadeaf26df502077586138.png

除了0,None,[],{},'',""是False,其他都是True,这里面也是有短路逻辑,3 or 2,3已经是True,直接返回3。3 and 2则是第一个为True就返回第二个数。

比较运算符基本与c语言一样,==是相等!=是不等。但是344953baef4d92ae4251e4adc4dd4755e99f848c.png

python里的逻辑运算里不能出现=只能为==,注意b1245ac0531e1d545408d3fbd008a61ccbf6e077.png

是先算a and 0然后让b等于这个结果不是625b3323038275d482a6de36642885aa424fd2e9.png

c语言里b=a这一句只要a不是0,就为True,是可以出现的。

还有==应用范围很广,字符串也可以用1c5f24d769a643ad71b000f79a89188b2a009a07.png

运算优先级问题,有小括号就不用说了。734614ff2ef1a0089b90c75139d726ba879c20d1.png

not>and>or这个需要注意并且6dbb2a0b270be07a4495e7a8708a5582461cda2f.png

python3还有元操作符和ab0f3dfd8d93d27070c3dbae5b6a5599922ee6ea.png

在这里说一个比较迷的问题c11d1991244b496eebfe84716b232a1a8bb5a3b0.png

2f7eb809073f0eae59329b4280df0924e9335452.png

a90f681467cbf9c4bb94be8bc2b1cb3b62b674c7.png

为什么会出现这几种不同的情况呢?我是这样理解的,变量是一种标签或者说指针。a=2那么a指向了存2的这个地址空间,下一步b=a其实是b=a=2,那么b也指向了这个地址空间,下一步a=4,a指向了存4的这个存储单元,不会影响b指向2。556065610c0761ddb0bf756c6afa590b230f2d65.png

但是bif的操作,比如a.clear()是对地址空间的内容进行修改。看下面

36bf94b7af4bdcbd1e7d916f56e3fb6228689fc1.png

下面来说一下条件和循环

if没什么说的,else if也可以简写为elif

对for与c语言有很大不同

首先要了解in,相当于matlab里的ismember(),返回一个bool值7938226d2cc637df680a22e1484e417a1fd1445d.png

range产生一个数组,可以有三个参数,第一个参数是起始,默认是0,第二个参数是结束,不包含,第三个是步长ad5b948f8f38c2b1a4004c1d033fb2443b34522b.png

range可以搭配表达式生成数组afc484c34f3b2114829aa211e45464cc95f88d3e.png

for不一定要搭档range,d4a6ab16f313a98898a2b67e1cd62928ea68e8a8.png

字符串也是可以搭配的。

最后说一下input函数,输入的是字符串b02eae9f880da5ccf84237fb3116fc1e97a10d43.png

type()可以查看一个变量类型,另外isinstance也可以cad24db3565f0f9c474fd6f7d8d1831dfcd41478.png

5917a13d08426cc961835526377e93e3afa3d57f.jpg

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值