「这是我参与11月更文挑战的第4天,活动详情查看:2021最后一次更文挑战」
写在前面👀
今天主要的内容是列表、元组、字典、集合。
一、总览
Python六大标准数据类型👇
基本数据类型 | 举例 |
---|---|
Number(数字) | 1、0.1、1+2j、True、False |
String(字符串) | '大角牛'、"小角牛" |
List(列表) | ['Luffy',1.1,3+5j,True] |
Tuple(元组) | ('Luffy',1.1,3+5j,True) |
Dictionary(字典) | {'Luffy':'路飞','Zoro':'索隆'} |
Set(集合) | {'a','b','c','d'}、set() |
- 其中不可变数据类型有三个:Number(数字)、String(字符串)、Tuple(元组)
- 可变数据类型也有三个:List(列表)、Dictionary(字典)、Set(集合)
- 列表和元组是有序的(元素可以是重复的),字典和集合是无序的(key是唯一不能重复的)。
二、列表
list是一种有序的可变集合,可以随时添加和删除其中的元素。
- 列表用方括号
[]
表示 - 比如想列出草帽团的船员,就可以用list:
>>>onepiece=['Luffy','Zoro','Nami','Usopp','Sanji','Chopper','Robin','FRANKY','BROOK']
>>>onepiece
['Luffy', 'Zoro', 'Nami', 'Usopp', 'Sanji', 'Chopper', 'Robin', 'FRANKY', 'BROOK']
复制代码
- 用
len()
函数可以得到列表中元素个数。
>>> len(onepiece)
9
复制代码
- 用
len()
函数可知草帽海贼团一共9人,但区区四皇老甚平肯定不高兴了。所以我们可以用list.append(待添加值)
追加元素到末尾,把老甚平添加到列表的最后:
>>> onepiece.append('Jimbei')
>>> onepiece
['Luffy', 'Zoro', 'Nami', 'Usopp', 'Sanji', 'Chopper', 'Robin', 'FRANKY', 'BROOK', 'Jimbei']
复制代码
- 也可以用
list.insert(索引号,待插入值)
把元素插入到指定的位置,比如索引号为5
的位置,把薇薇排到第六位:
>>> onepiece.insert(5,'Weiwei')
>>> onepiece
['Luffy', 'Zoro', 'Nami', 'Usopp', 'Sanji', 'Weiwei', 'Chopper', 'Robin', 'FRANKY', 'BROOK', 'Jimbei']
复制代码
- 要删除指定位置的元素,用
list.pop(i)
方法,其中i
是索引位置,虽然薇薇最终还是没有上船,但她永远是草帽海贼团的伙伴!
>>> onepiece.pop(5)
'Weiwei'
>>> onepiece
['Luffy', 'Zoro', 'Nami', 'Usopp', 'Sanji', 'Chopper', 'Robin', 'FRANKY', 'BROOK', 'Jimbei']
复制代码
- 要把某个元素替换成别的元素,可以直接赋值给对应的索引位置,神•乌索普:
>>> onepiece[3]='God'
>>> onepiece
['Luffy', 'Zoro', 'Nami', 'God', 'Sanji', 'Chopper', 'Robin', 'FRANKY', 'BROOK', 'Jimbei']
复制代码
- 列表里也可以有列表,叫做二维列表(俗称嵌套),当然也可以无限套娃,有多维列表:
>>> onepiece=['Luffy', 'Zoro',['大角牛','中角牛','小角牛'], 'Nami', 'God', 'Sanji', 'Chopper', 'Robin', 'FRANKY', 'BROOK', 'Jimbei']
>>> onepiece[2][2]
'小角牛'
复制代码
- 当然列表里也可以放其他类型的数据:
>>> list=['a',1,True,3.14,1+2j]
>>> list
['a', 1, True, 3.14, (1+2j)]
复制代码
三、元组
tuple和list非常类似,也是有序的,但是tuple一旦初始化就不能修改。
- 元组用小括号
()
表示 - 元组是不可变的,所以代码更安全。它能像列表一样被索引,但没有
.append
和.insert
等改变值的操作,强行改变就会报错。
>>> onepiece=('Luffy', 'Zoro', 'Nami', 'God', 'Sanji', 'Chopper', 'Robin', 'FRANKY', 'BROOK', 'Jimbei')
>>> onepiece(0)='路飞'
File "<stdin>", line 1
SyntaxError: cannot assign to function call
复制代码
- 定义一个空的tuple,可以写成
()
:
>>> tuple=()
>>> tuple
复制代码
- 当元组中只有一个元素时,为了避免和数学中的小括号发生歧义,需在元素后面加一个逗号
,
:
>>> a=(1)
>>> a
1
>>> a=(1,)
>>> a
(1,)
复制代码
- 元组也可以套娃,虽然元组tuple的元素不可改变,但它可以包含可变的对象,比如list列表。
四、字典
字典用键值对存储,他的查找速度极快,比列表快,但存储空间大;列表越长查的越慢,但列表存储空间小。
- 表示方法:
dict={'key':value}
用花括号和冒号作为标志。
>>> onepiece={'Luffy':'路飞','Zoro':'索隆','Sanji':'山治'}
>>> onepiece['Luffy']
'路飞'
复制代码
- 把数据放入dict的方法,除了初始化时指定外,还可以通过key放入:
>>> onepiece['Nami']='娜美'
>>> onepiece
{'Luffy': '路飞', 'Zoro': '索隆', 'Sanji': '山治', 'Nami': '娜美'}
复制代码
- 一个key只能对应一个value,所以多次对key放入值,他会选择最后一个:
>>> onepiece['Luffy']='草帽小子'
>>> onepiece['Luffy']
'草帽小子'
>>> onepiece['Luffy']='海贼王'
>>> onepiece['Luffy']
'海贼王'
复制代码
五、集合
set和dict类似,也是一组key的无序集合,但不存储value。因为key是唯一的,所以集合中没有重复的key。
- 可以使用大括号
{}
或者set()
函数创建集合,注意:创建一个空集合必须用 set() 而不是{},因为{}是用来创建一个空字典。 - 创建格式:
t={key1,key2,key3,...}
或t=set(KEY)
如:
>>> a={'1','2','3','4','5','6'}
>>> b = set('123456')
>>> print(a)
{'1', '3', '6', '5', '2', '4'}
>>> print(b)
{'1', '3', '6', '5', '2', '4'}
复制代码
- 集合中没有重复的元素,如:
>>> b = set('12345611223')
>>> print(b)
{'1', '3', '6', '5', '2', '4'}
复制代码
- 通过
add(key)
方法可以添加元素,通过remove(key)
方法可以删除元素,如:
>>> b.add('0')
>>> b.remove('6')
>>> print(b)
{'1', '3', '0', '5', '2', '4'}
复制代码
写在后面
感谢观看💖
如有错误,欢迎指正✨
近期评论