一.数据类型按数值非数值分类
1.python的数据类型可以分为 数字型 和 非数字型。
数字型
- 整型 (int)
- 浮点型(float)
- 布尔型(bool)
- 复数型 (complex)(主要用于科学计算)
非数字型
- 字符串
- 列表
- 元组
- 字典
2.不同类型变量之间的运算问题:
- 数字型变量之间可以直接计算
- 字符串变量之间使用 + 拼接字符串
- 字符串变量可以和 整数 使用 * 重复拼接相同的字符串
- 数字型变量 和字符串之间不能进行其他计算
提示:在 Python 2.x 中,整数根据保存数值的长度还分为: int(整数) long(长整数)
提示:在 Python 2.x 中,整数根据保存数值的长度还分为: int(整数) long(长整数)
二.按传递类型分类
1.python语言参数传递类型
java中参数的传递是按值传递的。但是在python中,函数参数的传递是按引用传递的。因为python是弱类型的编程语言,定义变量不需要指定类型。因此,实际上python变量全部是指针,因为变量是指针,所以所有的变量无类型限制,可以指向任意对象。指针的传递即是引用传递。
在java中数据类型分为基本数据类型和引用数据类型。但是在python中所有的数据都是引用数据类型。但是引用数据类型又区部分为可变数据类型和不可变数据类型。
2.python中的不可变数据类型
不可变数据类型中的不可变实际上指的是同一个数据,其地址不可变。当改变一个不可变数据类型的变量的值时,实际上python解释器重新创建了一个对象(产生一个新的引用),为其赋了新值。
这种不可变数据类型在进行函数参数传递时类似于java语言中的基本数据类型。
''' 学习中遇到问题没人解答?小编创建了一个Python学习交流QQ群:725638078 寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书! '''
a=5
b=5
b=6
b=7
例如上述代码(int型为不可变数据类型):
- 执行第一、第二行代码后,实际上a和b指向的是同一块内存例如0x0000。这个时候,这块内存被两个变量引用。
- 当执行第三行代码后,0x0000这块内存处更新为被一个变量引用,并且内存中又重新开辟了一块内存,用来存储6,假设这块内存的地址为0x0008。此时0x0008和0x0000都被一个变量引用。
- 当执行第四行代码后,python解释器又开辟了一块内存,假设为0x000f,而由于0x0008这块内存已经没有变量引用它,它便会被系统回收掉。
3.python中的可变数据类型
可变数据类型指的是,两个变量引用同一块内存,当其中一个变量执行改变内存中的数据的话,两个变量会同时更新数据,并不会开辟一块新内存。
这种可变数据类型在进行函数参数传递时类似于java中的按引用数据类型。
4.python中的可变数据类型与不可变数据类型
不可变类型
- 数字类型 int, bool, float, complex, long(2.x)
- 字符串 str
- 元组 tuple
可变类型
- 列表 list
- 字典 dict(字典key的值只能是不可变数据类型)
可变数据类型的数据是通过方法改变的。
三.python的局部变量与全局变量
1.局部变量与全局变量概述
局部变量 是在函数内部定义的变量,只能在函数内部使用。函数执行结束后,局部变量的内存就会被回收。
局部变量在函数执行时被创建,在函数执行完毕后被回收。期间便是局部变量的生命周期。
2.局部变量定义的位置与生命周期
3.全局变量定义的位置与生命周期
- 全局变量 是在函数外部定义的变量,所有函数内部都可以使用这个变量,全局变量一般定义在所有函数的上部(import下面)。
- 不允许使用赋值语句直接修改全局变量的值(修改全局变量的引用)。
- 如果想要在函数内部修改全局变量的值,可以做global声明后再修改。
4.全局变量的命名
一般定义全局变量时需要加前缀,例如:g_变量名或者gl_变量名。
四.python中变量的命名
python 标识符区分大小写
python 可以采用的变量命名方式:
- 下划线法
- 小驼峰法
- 大驼峰法
五.python中变量的定义与使用
定义:python是弱类型编程语言,它在定义变量时不需要指定数据类型。解释器会根据赋值运算符右边的数值进行自动识别数据类型。
使用:在 Python 中,每个变量在使用前都必须赋值,变量 赋值以后该变量才会被创建
注意:使用交互式和解释器形式定义和使用变量上有所区别。
结尾给大家推荐一个非常好的学习教程,希望对你学习Python有帮助!
Python基础入门教程推荐:更多Python视频教程-关注B站:Python学习者
【Python教程】全网最容易听懂的1000集python系统学习教程(答疑在最后四期,满满干货)
Python爬虫案例教程推荐:更多Python视频教程-关注B站:Python学习者
2021年Python最新最全100个爬虫完整案例教程,数据分析,数据可视化,记得收藏哦