700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > 判断变量是空_python基础(二):变量的数据类型 常量 操作符 分支 循环 条件判断...

判断变量是空_python基础(二):变量的数据类型 常量 操作符 分支 循环 条件判断...

时间:2019-01-10 10:11:37

相关推荐

判断变量是空_python基础(二):变量的数据类型 常量 操作符 分支 循环 条件判断...

文章目录

一、变量的数据类型

1、int(整型)

2、float(浮点型)

3、boolean(布尔型)

为了更简洁的表示较长的数,python采用e记法:

介绍两个判断数据类型的函数:

(1)type()

(2)isinstance(),官方推荐

二、常量

三、操作符

1、算数操作符

(1)除和地板除法的区别

(2)**乘方运算符

(3)三目运算符

2、赋值操作符

(1)增量复制

(2)链式复制

(3)交叉复制

(4)解压复制

3、比较操作符

(1)比较是否相等

(2)允许连续比较

(3)断言

4、逻辑运算操作符

5、成员运算符

6、身份运算符

四、分支

1、多分支语句

2、python可以有效避免悬挂else

五、循环

1、while循环:

(1)退出循环的两种方式

(2)while+else

2、for 循环:

(1)print中的end和逗号

(2)for应用在数组

(3)for循环中的range函数

(4)break和continue语句

(5)range函数补充知识点

六、条件判断

1、显示布尔值

2、隐式布尔值

一、变量的数据类型

变量推荐写法:

age_of_alex = 10#做到见名知义,不写拼音、汉字,全为小写

1、int(整型)

注:python中只有整型,没有长度限制,不像java,有短整型、长整型

2、float(浮点型)

注:float和int之间的唯一区别就是有没有小数点。

3、boolean(布尔型)

注:在python中布尔型也是只有两,一个True,一个False,且True相当于是1,False相当于是0.

为了更简洁的表示较长的数,python采用e记法:

5e-12=5 * 10-12

介绍两个判断数据类型的函数:

(1)type()

python这门语言对大小写有严格要求,还有缩进也有严格要求。

(2)isinstance(),官方推荐

二、常量

常量:不变的量注意:python的语法中没有变量的概念,但是在程序的开发过程中会涉及到常量的概念。

AGE_OF_ALEX=73 #当变量名全大写便代表常量,这是一种约定俗成的规范

三、操作符

1、算数操作符

前五个加、减、乘、除、取余、乘方、地板除法

依旧支持+=、-=、*=、/=、%=、**=、//=

注意点:

(1)除和地板除法的区别

注:除法是精确除法,地板除法是向下取整

(2)**乘方运算符

那么想下-3 ** 2它的运算结果是多少:

答案:-9,上面这个相当于:-(3 ** 2)3 ** -2它的运算结果是多少:

答案:1/9,上面这个相当于:3-2

(3)三目运算符

2、赋值操作符

(1)增量复制

(2)链式复制

>>> z=10>>> y=z>>> x=y>>> x,y,z(10, 10, 10)

可以多个变量同时赋值。

(3)交叉复制

>>> temp=m>>> m=n>>> n=temp>>> m,n

可以一行代码搞定:

>>> m=10>>> n=20>>> m,n=n,m # 交叉赋值>>> m,n(20, 10)

(4)解压复制

如果我们想把列表中的多个值取出来依次赋值给多个变量名,可以这么做

>>> nums=[11,22,33,44,55]>>> a,b,c,d,e=nums # nums包含多个值,就好比一个压缩包,解压赋值因此得名>>> a,b,c,d,e(11, 22, 33, 44, 55)>>> a,b,c=nums[2:5] #切片实现截取复制>>> a,b,c(33, 44, 55)

3、比较操作符

>、<、==、!=、>=,<=

这个没有什么说的!主要是python在这里两个特色:

(1)比较是否相等

我们都知道的java的"==“比较两个字符串是比较它们的地址,但是python中”=="即使比较字符串也是比较的内容,而不是地址

(2)允许连续比较

(3)断言

4、逻辑运算操作符

这个就是逻辑与、或、非!

优先级:not>and>or

5、成员运算符

注意:虽然下述两种判断可以达到相同的效果,但我们推荐使用第二种格式,因为not in语义更加明确

>>> not 'lili' in ['jack','tom','robin']True>>> 'lili' not in ['jack','tom','robin']True

6、身份运算符

需要强调的是:==双等号比较的是value是否相等,而is比较的是id是否相等

#1. id相同,内存地址必定相同,意味着type和value必定相同#2. value相同type肯定相同,但id可能不同,如下>>> x='Info Tony:18'>>> y='Info Tony:18'>>> id(x),id(y) # x与y的id不同,但是二者的值相同(4327422640, 4327422256)>>> x == y # 等号比较的是valueTrue>>> type(x),type(y) # 值相同type肯定相同(<class 'str'>, <class 'str'>)>>> x is y # is比较的是id,x与y的值相等但id可以不同False

四、分支

语句:

if 条件:else:

1、多分支语句

2、python可以有效避免悬挂else

什么叫悬挂else?

c语言中if语句如果不加{},很容易造成悬挂else,就是else我本来是想和外层if语句匹配,但是c语言这时会根据就近原则和内层if匹配。

python由于有严格的缩进,你的else缩进在哪里,就取决了你选择else属于那个if

五、循环

1、while循环:

do while循环了。

while循环里的break、continue语句我就不讲了。

(1)退出循环的两种方式

一个是break,这个不讲了。

另外一个是设置tag,此方法局限性较大。

tag = Truecount = 0while tag:username = input("请输入你的账号:")password = input("请输入你的密码:")if username == 'Mr.wu' and password == '123':print("登录成功")while tag:cmd = input("输入命令> ")if cmd == 'q':tag = Falseelse:print("命令{x}正在运行...".format(x=cmd))else:count += 1if count == 3:print("输入错误三次,退出程序...")breakelse:print("输入账号或密码错误,请重新输入")

程序运行效果:

tag直接可以跳出多重循环。

(2)while+else

语法:while 条件:代码1代码2if 条件:breakelse:代码3

当循环正常执行完毕退出后,else语句中的代码就会执行,循环如果是break退出的,就不会执行。显然这是一个针对break的语法。

案例:

tag = Truecount = 0while tag:username = input("请输入你的账号:")password = input("请输入你的密码:")if username == 'Mr.wu' and password == '123':print("登录成功")while tag:cmd = input("输入命令> ")if cmd == 'q':tag = Falseelse:print("命令{x}正在运行...".format(x=cmd))else:count += 1if count == 3:print("输入错误三次,退出程序...")breakelse:print("输入账号或密码错误,请重新输入")else:print("程序正常执行完毕!")

程序正常执行完毕,执行else里的代码。

2、for 循环:

(1)print中的end和逗号

num = '吴晋丞'for i in num :print(i,end='') #其中逗号代表空格

原理解释:为末尾end传递一个空字符串,这样print函数不会在字符串末尾添加一个换行符,而是添加一个空字符串,其实这也是一个语法要求,表示这个语句没结束。end的作用也就是取消换行,如果你把空字符串中加个空格,那么它就是用在字符串末尾添加空格替代添加换行符。

(2)for应用在数组

len这个函数是用来计算传入字符串长度的。

java中只能用数字作为参数,制造循环,python中却可以用字符串当作参数

(3)for循环中的range函数

还可以设置循环的步长

这个range函数保证了python的for循环可以完成java中for循环的所有功能。

(4)break和continue语句

这个和java中的效果一样!

(5)range函数补充知识点

range搭配for可以取索引

a = [1,'a',True,3]for i in range(len(a)):print(a[i])#想下 for i in a:,它们两者的区别

range函数在python3的优化

python2:

python3:

python2中直接创建一个存储着range范围内的所有数的列表python3中是不创建,要用多少,我在用的时候再创建,因为程序for循环搭配range不一定能把range使用完。

python3中的range无疑减少了内存的开销。通俗来说,python2直接把10个蛋给你,python3给你一个能下10个蛋的鸡,你要一个蛋,就给你下一个。

六、条件判断

条件一般由比较运算符和逻辑运算符组合而成,逻辑运算符为可要可不要。

age > 10 and sex = '男' #这就是条件判断,最后得到的是一个布尔值

1、显示布尔值

True、False

if True:代码1代码2

2、隐式布尔值

所有数据类型,0,none、空为假,其他都为真

print(not '')print(not None)print(not 0)print(not [])print(not 1)print(not 4)print(not 'abc')print(not [1,2])

好啦,今天的分享到这里啦,如果还有什么不懂的可以加入交流群一起学习(个性签名)

微信公众号:(个性签名)

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。