python数据类型
一、数据类型
1.什么是数据类型
在日常生活中不同事物拥有多种多样的表现形式,在程序中也是如此,需要不同的数据类型记录不同的变量值。
2.为何学习数据类型
针对不同的数据采用最佳的数据类型来表示出该数据的价值。
3.本次学习数据类型仅仅是了解
只要看到每个数据类型能够叫出它们的名字以及代码如何编写即可。
4.学前必会
如何查看数据值的数据类型
调用type(数据值)就能查看数据值的数据类型,也可以通过type(变量名),查看跟变量名绑定的数据值的数据类型。
数据类型之整型:int
就是数学中的整数,不能出现小数点。数据值可以修改。代码展示:
应用场景:年龄 班级人数 年份
age = 18
stu_num = 56
year = 2022
数据类型之浮点型:float
在整数的基础上增加了展示小数点的功能,浮点型数据可以拥有很大的小数点位数,但是当我们使用print命令打印时只能看到前面一部分小数点。数据值可以修改。代码展示:
应用场景:身高 体重 薪资
height = 1.83
weight = 75.5
salary = 3.1
数据类型之字符串:str
就是把数据值当成文本类型来存储,但是需要特定的存储符号。数据值可以修改。代码展示:
应用场景:姓名 地址 爱好
name = 'jason'
addr = '芜湖'
hobby = '学习'
1.定义字符串有四种方式
name = 'jason'
name1 = "jason"
name2 = '''jason'''
name3 = """jason"""
2.为什么定义字符串需要有多种方式
我们在字符串中编写文本时可能会使用到引号,为了避免冲突,就有了多种方式。
注:字符串是根据引号来进行定义的,比如两个双引号,只有成对的引号才能把其中的内容变成字符串。
information = "鸡哥说'你说得对'"
# 鸡哥说'你说得对'
print(information)
information2 = "鸡哥说"你说得对''
# 这里会直接报错“鸡哥说”在双引号内,“你说得对”失去了定义。
print(information2)
3.如何区分三引号是字符串还是注释
关注左侧是否含有赋值符号和变量名 如果有则为字符串 没有则为注释
数据类型之列表:list
列表就是可以存储多个数据值的类型,并且可以非常方便的取和修改。建立列表需要用中括号把两边括起来,数据值与数据值之间逗号隔开。列表的数据值可以是任意数据类型,同时数据值可以修改。代码展示:
#生成多个数据值
name_list = ['jason', 'tony', 'kevin', 'oscar', 'jerry']
#放入任意类型的数据值
l1 = [11, 11.11, 'jason',[11, 22]]
数据类型之字典:dict
能够非常精确的存储和表达数据值的含义。代码展示:
infor_diction = {'name': 'jason', 'age': '19', 'hobby': 'read', }
1.字典文字描述
大括号括起来 内部可以存放多个数据 数据的组织形式是K:V键值对。键值对与键值对之间逗号隔开。K是对V的描述性性质的信息(解释说明),一般都是字符串类型。其中V是真正的数据值,可以是任意数据类型,输入时符合对应格式即可,但是k不能直接修改。
2.按K取值
字典只能按K取值,因为字典是无序的,没有索引的概念。
print(infor_diction['name'])
#使用print(infor_diction['name'])后可以看到结果jason
数据类型之布尔值:bool
布尔值就是关于对错的判断,可以在程序中判断是否符合条件,主要用于流程控制中。由True(对)和False(错)组成,python中需要用大写的英文来表示。
python中的数据值都是有布尔值的,其中0、None和'' 、[]、{}、()的布尔值是False,其他的都是True。
存储布尔值的变量名通常都是is开头的(也是一种君子协定)。例如:is_work = True
数据类型之元组:tuple
元组可以说是用小括号组成的列表,中间的数据同样是用逗号隔开,数据类型可以是任意的。同时元组也可以索引取值,但是元组中绑定的内存地址不能修改,如果绑定的是一个列表,我们依旧可以修改列表中的数据值。
举例:
example = (11, 22, 33, 44, [12, 23, 34, 'name'])
通过运行代码,我们可以发现修改其他元组内的数据值会直接报错,但是修改列表内的数据值是可以的。
特殊情况:
当元组内只有一个数据值,需要在小括号内的数据值后跟上一个逗号,否则数据类型就不是元组了,会变成你所写的数据对应的类型。
example1 = (11,) # 是tuple类型
example2 = (11) # 是int类型
列表和元组的区别
列表是动态数组,它们可变且可以重设长度(改变其内部元素的个数)。
元组是静态数组,它们不可变,且其内部数据一旦创建便无法改变。
元组缓存于Python运行时环境,这意味着我们每次使用元组时无须访问内核去分配内存。
这些区别结实率两者在设计哲学上的不同:
列表可被用于保存多个互相独立对象的数据集合
元组用于描述一个不会改变的事务的多个属性
数据类型之集合:set
集合跟数学中的集合定义相似,用大括号组成,中间插入数据值并用逗号隔开,但是不像字典需要kv键值对的形式表示。
举例:
s1 = {1,2,3,4,5,6}
集合多用于去重和关系运算,只能是不可变类型,空集合需要用特殊的方法定义,否则会显示成字典类型。
举例:
s1 = {}
s2 = set()
print(type(s1)) # <class 'dict'>
print(type(s2)) # <class 'set'>