Python变量与数据类型简介
*********本文介绍python基本的变量的声明,层级,机制,命名规则以及python主要的数据类型
1.python变量
-
设置变量的目的:如果需要反复使用或者改变某一值得时候,可将该值设置为变量,便于反复使用
-
变量的创建:第一次赋值时即创建完成
-
变量的声明:不用写变量类型,其类型根据实际的对象来决定。例如:
name = 'Tom'
age = 30
这里有两个赋值表达式,它不像c语言一样要在变量名前加上数据类型,python会直接根据实际对象来判别变量类型。根据引号(单双引号)可直接判断为是字符串,根据整数判断为是整型,根据小数判断为是浮点型等等。
-
变量的命名规则:
4.1. 变量名由数字,字母,下划线组成。
4.2 变量名只能以字母,下划线开头。
4.3 不能有空格。
4.4 避免python关键字或函数。
4.5 简短且有描述性。
4.6 区分特殊符号。如1和l,o和0等 -
变量的层级:
以name = 20为例,看一下层级关系
那么在实际运行过程中,python会先创建一个地址来指向20,然后让实际对象20的地址赋给变量名name,从而实现了变量的赋值。我们用id()函数来看看:
可以看到,name和20的地址都是一样的。 -
变量的机制:
6.1 垃圾回收机制
刚开始赋值时,python为20创建了一个地址用来储存20,创建之后,再赋值给name,这时python计数器counter会计数,意为20这个时候有一个变量占用着。那么,如果令name = 30的话,20这个地址就没变量占用了,计数器counter变为0,对象20就是变为“垃圾”被python清空。6.2 共享引用机制
当有两个变量名同时对应着一个相同的实际对象时,比如这里的name和age都对应着20,那么python会将20的内存地址共享给name和age,从而使得内存分配简单高效。
2.python常见数据类型
常见的数据类型有:数字(int,float,Fraction),字符串(str),列表(list),字典(dict),元组(tuple),集合(set),自定义类型等
**数据类型的划分(按照功能划分)
- 基本类型:数字,字符串
- 容器类型:列表,元组,字典,集合,自定义类型
**数据类型的划分(按照性质划分)
- 不可变类型:数字,字符串,元组,不可变集合
- 可变类型:列表,字典,集合,自定义类型