垃圾回收机制,可变和不可变类型,数据类型,基本运算符

Cpython解释器的垃圾回收机制
  什么是垃圾:当一个值身上没有绑定任何变量名时,该值就是一个垃圾
  引用计数增加
  age=1 1的计数=1
  x=age 1的计数=2
  引用计数减少
  age=2 1 的计数=1
  print(age)

  del x 1的引用计数=0

变量值的三个特征
  id:反映的是内存地址
  type:数据类型
  值:

  age=1
  print(id(age))
  print(type(age))

总结:
  id相同,值一定相同
  值相同,id可以不同


  is与 ==
  ==:值是否相等
  is:id是否相等

可变类型与不可变类型
  可变类型:值改变,id不变,证明就是在改变原值
  不可变类型:值改变,id也变,证明根本不是在改变原值,是创建了新值


在python3中只有一个input
  特点:用户输入的任意内容都存成str类型

在python2中只有一个raw_input和python3一模一样
  要求用户必须输入一个明确的类型,输入什么类型就存成什么类型

数据类型的基本使用
  整型int
  作用:用来记录年龄,等级,号码状态
  定义:age=10
  print(type(age))
  使用:
  print(age+1)

浮点型float
  作用:记录身高,体重,工资
  定义:
  salary=3.2
  print(type(salary))
  使用:
  print(3.1+3.2)
  print(3.1+3)

字符串类型str
  作用:记录描述性质的状态,比如名字,性别
  定义:在单引号,双引号,三引号内,包含一系列的字符

列表类型list
  作用:用来记录多个值,用索引来对应多个值
  定义:在[ ]内用逗号分隔开多个任意类型的值
  a=[1,2.3,'xxx',['a','b','c']]
  print(a[0])


字典类型dict
  用来记录多个值,用key对应value,其中key对value有描述性的功能
  在{}内,用逗号分割开多元素,每一个元素都是key:value的形式,其中value可以是任意类型,而key通常应该是str类型

布尔类型:true,false
  所有数据类型自带布尔值
  布尔值为假的数据类型:0,None,空


基本运算符
比较运算  <   >     >=      <=      !=       ==
逻辑运算
  and:连接左右两个条件,只有两个条件同时成立时and运算的结果为true
  or:连接左右两个条件,两个条件成立任意一个or运算的结果就为true
  not:not后面取反


  先启动python解释器,python解释器把test.py的文件内容当作普通文本内容读入内存,python解释器解释执行刚刚读入到内存的代码,开始识别python语法

原文地址:https://www.cnblogs.com/xuezhihao/p/9984693.html