Python里的元组、列表和字典这3种数据类型都有哪些区别
List 数据类型
列表包含用逗号分隔并括在方括号[]中的项,列表与c语言中的数组非常相似,一个不同之处在于:列表的所有项可以是不同的数据类型,而C语言中数组只能是同一种数据类型
list = [123,'abcd',10.2,'d']可以是任何数据类型或单个数据类型的列表print(list)输出 [123,'abcd',10.2,'d']print(list[0:2])输出前2个列表项 [123,'abcd']list1 = ['hello','world']print(list1 * 2)将会出现2次 ['hello','world','hello','world']print(list + list1)这两个列表用“+”号将会被连接输出:[123,'abcd',10.2,'d','hello','world']
Dictionary 数据类型
字典由键值对组成(类似于java中的HashMap),它由大括号{}包围,可以使用方括号[]通过key访问值或者赋值
dic={'name':'red','age':10}print(dic)会输出整个字典 {'name':'red','age':10}print(dic['name'])输出key为name的值: 'red'print(dic.values())输出字典所有值 ['red',10]print(dic.keys())输出字典所有的键 ['name','age']
Tuple 数据类型
列表被括在括号[]中,它们的元素可以更改,列表长度也可以被更改。
而元组被括在括号()中,它们的元素不可以更改,元组是完全不可变的。
tuple = (123,'hello')tuple1 = ('world')print(tuple)将输出整个元组: (123,'hello')print(tuple[0])将输出元组中第一个值 . (123)print(tuple + tuple1)会输出: (123,'hello','world'),注意这里并没有去改变他们各自的值tuple[1]='update'这里会报错,因为你尝试更改它的值
结论
1、元组是不可变的,而列表、字典是可变的
元组是不可变对象,对象一旦生成,它的值将不能更改;列表是可变对象,对象生成后,可以对其元素进行更改、添加、删除、清空、排序等操作。
2、元组通常是由不同的数据组成,而列表是相同的数据队列
元组表示的是结构,而列表表示的是顺序。列表的权限远大于元组。
3、列表不能作为字典的key值,而元组可以。字典的键是唯一的。
0 条评论