可变量与不可变量、逻辑运算符与流程控制if判断

一 可变不可变类型

1、不可变型:值改变,id也变了,说明是产生了新的值,并没有改变原值,原值是不可以被修改的

int(整型)、float、str、bool类型 所有的对变量的赋值都是产生新值(id)

 int、float、str都被设计成不可分割的整体,不能被改变

2、可变类型:值改变,id不变,证明改的是原值,原值是可以改变的

list、dic是可变类型,列表内的值可变,列表本身不会改变

字典补充:
定义:{}内用逗号分隔开 key:value,value可以是任意类型,但key必须是不可变型

 

 所有的赋值操作,是在栈区里面产生了一个新的值,捆绑给变量名

l1产生新的列表

l1 和l是没有关系的,id一定是不同的内存地址

二、逻辑运算符

        逻辑运算符用于连接多个条件,进行关联判断,会返回布尔值True 或 False

条件可以是:

        a、比较运算符

        采集到的对象的一种信息,

        进行条件判断后得到一个布尔值

        b、可以是True、False

        隐式布尔值,所有的值都可以当成条件去用

其中0、None、空(空字符串、空列表、空字典)=》代表布尔值为False,其余类型都为真(1、‘         ’、‘ad’等)

1、not、or、and基本使用

 ps:not与紧跟其后的那个条件是一个不可分割的整体

1.1、优先级 not >and >or

可以用括号括起来,方便判断

2、成员运算符

 判断key是否存在于字典

 not in

 3、身份运算符

is  #判断id是否相等

三 流程控制之if判断

1.语法1 

if 条件:

(缩进4个空格)代码1

(缩进4个空格)代码2

2、语法2

if 条件:’‘’

    代码1

    代码 2

else :

     代码1

     代码 2

3.语法3:

if 条件1:

    代码1

    代码2

    代码3

elif 条件2:

    代码1

    代码2

    代码3

else:

    代码1

    代码2

    代码3

 # if 可以嵌套if

原文地址:https://www.cnblogs.com/NevMore/p/12431685.html