python基础之数据类型
python数据类型
在编程中,数据类型是一个重要的概念。
变量可以存储不同类型的数据,并且不同类型可以执行不同的操作。
在这些类别中,Python 默认拥有以下内置数据类型:
数据类型 | python内置函数 |
---|---|
文本类型: | |
数值类型: | |
序列类型: | |
映射类型: | |
布尔类型: | |
二进制类型: |
可以通过type()方法来获取任何对象的数据类型
a = 1
print(type(a))
python的标准数据类型有七个:整型、字符串、列表、元组、集合、字典、布尔值
可变类型和不可变类型区别
-
可变数据类型:当该数据类型对应的变量的值发生了变化时,如果它对应的内存地址不发生改变,那么这个数据类型就是 可变数据类型。
-
不可变数据类型:当该数据类型对应的变量的值发生了变化时,如果它对应的内存地址发生了改变,那么这个数据类型就是 不可变数据类型。
总结:可变数据类型更改值后,内存地址不发生改变。不可变数据类型更改值后,内存地址发生改变。python查看内存地址方法:id()
pthon标准的数据类型中
可变数据类型:list(列表)、dict(字典)、set(集合,不常用)
不可变数据类型:数值类型(int、float、bool)、string(字符串)、tuple(元组)
代码举例说明:
# 数值数据类型
# 集合数据类型
set_data = {1, 'd', '34', '1', 1}
print(id(set_data), type(set_data))
set_data.add('djx') # 添加元素
print(id(set_data), type(set_data))
# 结果
84993488 <class 'set'>
84993488 <class 'set'>
总结:对应类型的数据被修改后,内存地址无变化的即为可变类型,有变化的即为不可变类型,即对应类型的数据,内部发生变化后,内存地址无变化为可变类型,有变化为不可变类型
知识点:当两个变量的值为不可变类型时,且值相同时,内存地址指向同一个,当两个变量的值为可变类型,且值相同时,内存地址指向两个不同的地址
'''
不可变类型
'''
#数值
a = 1999
b = 1999
print(id(a),id(b))
print(a is b ) #比较内存地址是否相同
print(a == b) #比较值是否相同
#字符串类型
a = '测试'
b = '测试'
print(id(a),id(b))
print(a is b ) #比较内存地址是否相同
print(a == b) #比较值是否相同
#元组
a = (1,2,3)
b = (1,2,3)
print(id(a),id(b))
print(a is b ) #比较内存地址是否相同
print(a == b) #比较值是否相同
'''可变类型'''
#列表
a = [1,2,3]
b = [1,2,3]
print(id(a),id(b))
print(a is b ) #比较内存地址是否相同
print(a == b) #比较值是否相同
#字典
a = {'name':'测试','age':18}
b = {'name':'测试','age':18}
print(id(a),id(b))
print(a is b ) #比较内存地址是否相同
print(a == b) #比较值是否相同
#集合
a = {'ces',1}
b = {'ces',1}
print(id(a),id(b))
print(a is b ) #比较内存地址是否相同
print(a == b) #比较值是否相同