各位用户为了找寻关于Python入门_浅谈数据结构的4种基本类型的资料费劲了很多周折。这里教程网为您整理了关于Python入门_浅谈数据结构的4种基本类型的相关资料,仅供查阅,以下为您介绍关于Python入门_浅谈数据结构的4种基本类型的详细内容
数据结构:通俗点说,就是储存大量数据的容器。这里主要介绍Python的4种基本数据结构:列表、字典、元组、集合。
格式如下:
列表:list = [val1,val2,val3,val4],用中括号; 字典:dict = {key1:val1,key2:val2},大括号,且每个元素是带有冒号的key与val的对应关系组; 元组:tuple = (val1,val2,val3,val4),小括号; 集合:set = {val1,val2,val3,val4},大括号。
1. 列表:
list = [val1,val2,val3,val4]
列表最显著的特征是:
列表中每个元素都是可变的; 列表中的元素都是有序的,即每个元素都有一个位置; 列表可以容纳Python中的任何对象。 接下来看下列表的增删改查。
增:
? 1 2 31
list
=
[
1
,
'dwd'
,
3.6
]
2
list
.insert(
0
,
'Python'
)
3
print
(
list
)
用insert方法可以实现在列表中增加元素。insert方法需要写明增加在哪个位置和增加的内容,新增元素的实际位置是在指定位置元素之前的位置;如果指定的位置不存在,默认会增加在列表末尾。
? 1 2 3 4 5 61
list
=
[
1
,
'dwd'
,
3.6
]
2
list
[
0
:
0
]
=
[
9
]
3
# 【0:0】是指在list中的第1个位置插入新元素
4
list
[
3
:
3
]
=
[
'a'
]
5
# 【3:3】是指在list中的第4个位置插入新元素
6
print
(
list
)
上面说到的这两种方法都是添加单个元素,除了添加单个元素外,还可以添加多个元素,用extend方法来实现。
? 1 2 3 4 51
list_a
=
[
1
,
'dwd'
,
3.6
]
2
list_b
=
[
'Python'
,
56
,
'game'
]
3
list_a.extend(list_b)
4
# extend方法用于在列表末尾一次性追加另一个列表中的多个值
5
print
(list_a)
删:
? 1 2 3
1
list
=
[
1
,
'dwd'
,
3.6
]
2
list
.remove(
'dwd'
)
3
print
(
list
)
删除列表中的元素除了用上面的remove方法来实现外,也可以用del关键字来声明:
? 1 2 3 41
list = [
1
,
'dwd'
,
3.6
]
2
del list[
0
:
2
]
3
# 【
0
:
2
】是删除第
1
和第
2
个位置的元素
4
print(list)
改:
? 1 2 3 41
list
=
[
1
,
'dwd'
,
3.6
]
2
list
[
2
]
=
7
3
list
[
0
]
=
'start'
4
print
(
list
)
如果想要替换掉列表中的某个元素,可以直接给列表某位置的元素重新赋值,list[2]指list列表中的第3个元素。
查:
列表的索引与之前文章《Python入门_浅谈字符串的分片与索引、字符串的方法》中提到的字符串的索引类似,同样是分正反两种索引方式,可以从前往后,也可以从后往前索引。比如:
? 1 2 3 4 5 6 7 8 9list
=
[
1
,
'dwd'
,
3.6
]
print
(
list
[
1
])
# 打印第2个位置的元素
print
(
list
[
-
1
])
# 打印倒数第一个位置的元素
print
(
list
[:
2
])
# 打印第1和第2个元素
print
(
list
[
1
:])
# 打印第2到最后一个的元素
但如果想查看某个元素的位置,就不适合用这种方式,程序会报错。因为列表只接受用位置进行索引,不可以通过元素来查找位置。
2. 字典:
dict = {key1:val1,key2:val2}
编程世界中的很多概念都源自于生活,字典也是。这种数据结构如我们使用的字典一样,通过“名称—内容”来构建,在Python中每个元素是带有冒号的key与val的对应关系组,习惯称之为键值对。
字典的特征如下:
字典中的元素必须是键值对的形式;
键(key)不可以重复,而值(val)可以重复;
键不可变,无法修改;值可修改,可以是任何对象。
即使字典中有重复的键,打印出来时也只会出现一次。比如:
? 1 21
dict
=
{
'A'
:
'art'
,
'B'
:
'big'
,
'C'
:
'cute'
,
'C'
:
'cute'
}
2
print
(
dict
)
接下来看下字典的增删改查。
增:
字典中没有像列表那样有一个现成的insert方法可以使用,但可以通过下面这种方式插入元素,元素默认会插入在最后一个位置。
? 1 2 31
dict
=
{
'A'
:
'art'
,
'B'
:
'big'
,
'C'
:
'cute'
}
2
dict
[
'D'
]
=
'dictionary'
3
print
(
dict
)
上面讲到在列表中增加多个元素时可以使用extend方法来实现,在字典中也有对应的update方法来实现添加多个元素。
? 1 2 31
dict
=
{
'A'
:
'art'
,
'B'
:
'big'
,
'C'
:
'cute'
}
2
dict
.update({
'D'
:
'dictionary'
,
'E'
:
'exam'
})
3
print
(
dict
)
删:
在字典中删除某元素,也可以使用del关键字。
? 1 2 31
dict
=
{
'A'
:
'art'
,
'B'
:
'big'
,
'C'
:
'cute'
}
2
del
dict
[
'B'
]
3
print
(
dict
)
需要注意的是,虽然字典是用大括号的,但在删除时依然使用的是中括号。
改:
如果要修改字典里的元素,直接重新给键赋值即可。
? 1 2 31
dict
=
{
'A'
:
'art'
,
'B'
:
'big'
,
'C'
:
'cute'
}
2
dict
[
'B'
]
=
'beyond'
3
print
(
dict
)
查:
在字典中进行索引时,和删除一样,用的是中括号,中括号中存放字典的键,也就是说对字典元素进行索引时是通过键来索引的。
? 1 2 31
dict
=
{
'A'
:
'art'
,
'B'
:
'big'
,
'C'
:
'cute'
}
2
dict
[
'B'
]
3
print
(
dict
[
'B'
])
之前在文章《Python入门_浅谈字符串的分片与索引、字符串的方法》中有提到过字符串的分片,在字典里,字符串是不可以进行分片的。
3. 元组
tuple = (val1,val2,val3,val4)
Python中的元组与列表类似,不同之处在于元组不可以修改,类似于稳固版的列表,因此在列表中可以使用的增删改的方法在元组中是不可以使用的,但是可以对元组中的元素进行索引,和列表类似。
? 1 2 3 4 51
tup
=
(
1
,
2
,
's'
,
7
)
2
print
(tup[
0
])
3
print
(tup[
-
1
])
4
print
(tup[
1
:])
5
print
(tup[:
-
2
])
4. 集合
set = {val1,val2,val3,val4}
集合的概念有点接近于数学上的集合。每个集合中的元素是无序的、不重复的任何对象,我们可以通过集合去判断数据的从属关系,有时还可以通过集合把数据结构中重复的元素减掉。
集合不可以被切片也不能被索引,除了做集合运算之外,集合元素可以被添加和删除。
? 1 2 3 4 5 6 7set
=
{
7
,
1
,
8
,
3
,
4
,
5
,
3
}
set
.add(
0
)
# 新增元素0
set
.discard(
7
)
# 删除掉元素7
print
(
set
)
# 打印出的集合会从小到达排列,并去重
等后面如果用到集合时,再详细展开集合的运算。
后续会介绍下数据结构的一些小技巧。
操作环境:Python版本,3.6;PyCharm版本,2016.2;电脑:Mac
以上这篇Python入门_浅谈数据结构的4种基本类型就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。