python的数据类型和变量的定义及使用

一.数据类型按数值非数值分类

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个爬虫完整案例教程,数据分析,数据可视化,记得收藏哦

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值