列表支持一些用于构建数据结构的方法,如表 1-3 所示。
表 1-3 Python 列表提供的方法
方 法 名 | 用 法 | 解 释 |
append | alist.append(item) | 在列表末尾添加一个新元素 |
insert | alist.insert(i,item) | 在列表的第 i 个位置插入一个元素 |
pop | alist.pop() | 删除并返回列表中最后一个元素 |
pop | alist.pop(i) | 删除并返回列表中第 i 个位置的元素 |
sort | alist.sort() | 将列表元素排序 |
reverse | alist.reverse() | 将列表元素倒序排列 |
del | del alist[i] | 删除列表中第 i 个位置的元素 |
index | alist.index(item) | 返回 item 第一次出现时的下标 |
count | alist.count(item) | 返回 item 在列表中出现的次数 |
remove | alist.remove(item) | 从列表中移除第一次出现的 item |
>>> myList
[1024, 3, True, 6.5]
>>> myList.append(False)
>>> myList
[1024, 3, True, 6.5, False]
>>> myList.insert(2,4.5)
>>> myList
[1024, 3, 4.5, True, 6.5, False]
>>> myList.pop()
False
>>> myList
[1024, 3, 4.5, True, 6.5]
>>> myList.pop(1)
3
>>> myList
[1024, 4.5, True, 6.5]
>>> myList.pop(2)
True
>>> myList
[1024, 4.5, 6.5]
>>> myList.sort()
>>> myList
[4.5, 6.5, 1024]
>>> myList.reverse()
>>> myList
[1024, 6.5, 4.5]
>>> myList.count(6.5)
1
>>> myList.index(4.5)
2
>>> myList.remove(6.5)
>>> myList
[1024, 4.5]
>>> del myList[0]
>>> myList
[4.5]
2.2 字符串类型(string)
字符串是零个或多个字母、数字和其他符号的有序集合。这些字母、数字和其他符号被称为 字符。常量字符串值通过引号(单引号或者双引号均可)与标识符进行区分。
由于字符串是序列,因此之前提到的所有序列运算符都能用于字符串。此外,字符串还有一 些特有的方法,表 1-4 列举了其中一些。
表 1-4 Python 字符串提供的方法
方 法 名 | 用 法 | 解 释 |
center | astring.center(w) | 返回一个字符串,原字符串居中,使用空格填充新字符串,使其长度为 w |
count | astring.count(item) | 返回 item 出现的次数 |
ljust | astring.ljust(w) | 返回一个字符串,将原字符串靠左放置并填充空格至长度 w |
rjust | astring.rjust(w) | 返回一个字符串,将原字符串靠右放置并填充空格至长度 w |
lower | astring.lower() | 返回均为小写字母的字符串 |
upper | astring.upper() | 返回均为大写字母的字符串 |
find | astring.find(item) | 返回 item 第一次出现时的下标 |
split | astring.split(schar) | 在 schar 位置将字符串分割成子串 |
列表和字符串的主要区别在于,列表能够被修改,字符串则不能。列表的这一特性被称为可修改性。列表具有可修改性,字符串则不具有。
2.3 元组类型(tuple)
由于都是异构数据序列,因此元组与列表非常相似。它们的区别在于,元组和字符串一样是 不可修改的。元组通常写成由括号包含并且以逗号分隔的一系列值。与序列一样,元组允许之前 描述的任一操作。
>>> myTuple = (2,True,4.96)
>>> myTuple
(2, True, 4.96)
>>> len(myTuple)
3
>>> myTuple[0]
2
>>> myTuple * 3
(2, True, 4.96, 2, True, 4.96, 2, True, 4.96)
>>> myTuple[0:2]
(2, True)
然而,如果尝试改变元组中的一个元素,就会遇到错误。请注意,错误消息指明了问题的出 处及原因。
>>> myTuple[1]=False
Traceback (most recent call last):
File "<pyshell#137>", line 1, in -toplevel-
myTuple[1]=False
TypeError: object doesn't support item assignment
2.4 集合类型(set)
集(set)是由零个或多个不可修改的 Python 数据对象组成的无序集合。集不允许重复元素, 并且写成由花括号包含、以逗号分隔的一系列值。空集由 set()来表示。集是异构的,并且可以通过下面的方法赋给变量。
>>> {3, 6, "cat", 4.5, False}
{False, 4.5, 3, 6, 'cat'}
>>> mySet = {3, 6, "cat", 4.5, False}
>>> mySet
{False, 4.5, 3, 6, 'cat'}
尽管集是无序的,但它还是支持之前提到的一些运算,如表 1-5 所示。
表 1-5 Python 集支持的运算
运 算 名 | 运 算 符 | 解 释 |
成员 | in | 询问集中是否有某元素 |
长度 | len | 获取集的元素个数 |
aset | ||
& | aset & otherset | 返回一个包含 aset 与 otherset 共有元素的新集 |
- | aset - otherset | 返回一个集,其中包含只出现在 aset 中的元素 |
<= | aset <= otherset | 询问 aset 中的所有元素是否都在 otherset 中 |
集支持一系列方法,如表 1-6 所示。在数学中运用过集合概念的人应该对它们非常熟悉。注 意,union、intersection、issubset 和 difference 都有可用的运算符。
表 1-6 Python 集提供的方法
方 法 名 | 用 法 | 解 释 |
union | aset.union(otherset) | 返回一个包含 aset 和 otherset 所有元素的集 |
intersection | aset.intersection(otherset) | 返回一个仅包含两个集共有元素的集 |
difference | aset.difference(otherset) | 返回一个集,其中仅包含只出现在 aset 中的元素 |
issubset | aset.issubset(otherset) | 询问 aset 是否为 otherset 的子集 |
add | aset.add(item) | 向 aset 添加一个元素 |
remove | aset.remove(item) | 将 item 从 aset 中移除 |
pop | aset.pop() | 随机移除 aset 中的一个元素 |
clear | aset.clear() | 清除 aset 中的所有元素 |
>>> mySet
{False, 4.5, 3, 6, 'cat'}
>>> yourSet = {99,3,100}
>>> mySet.union(yourSet)
{False, 4.5, 3, 100, 6, 'cat', 99}
>>> mySet | yourSet
{False, 4.5, 3, 100, 6, 'cat', 99}
>>> mySet.intersection(yourSet)
{3}
>>> mySet & yourSet
{3}
>>> mySet.difference(yourSet)
{False, 4.5, 6, 'cat'}
>>> mySet - yourSet
{False, 4.5, 6, 'cat'}
>>> {3,100}.issubset(yourSet)
True
>>> {3,100}<=yourSet
True
>>> mySet.add("house")
>>> mySet
{False, 4.5, 3, 6, 'house', 'cat'}
>>> mySet.remove(4.5)
>>> mySet
{False, 3, 6, 'house', 'cat'}
>>> mySet.pop()
False
>>> mySet
{3, 6, 'house', 'cat'}
>>> mySet.clear()
>>> mySet
set()
2.5 字典类型(dict)
字典是无序结构,由相关的元素对构成,其中每对元素 都由一个键和一个值组成。这种键–值对通常写成键:值的形式。字典由花括号包含的一系列以逗 号分隔的键–值对表达,如下所示。
>>> capitals = {'Iowa':'DesMoines','Wisconsin':'Madison'}
>>> capitals
{'Wisconsin':'Madison', 'Iowa':'DesMoines'}
可以通过键访问其对应的值,也可以向字典添加新的键–值对。访问字典的语法与访问序列 的语法十分相似,只不过是使用键来访问,而不是下标。添加新值也类似。
>>> capitals['Iowa']
'DesMoines'
>>> capitals['Utah']='SaltLakeCity'
>>> capitals
{'Utah':'SaltLakeCity', 'Wisconsin':'Madison', 'Iowa':'DesMoines'}
>>> capitals['California']='Sacramento'
>>> capitals
{'Utah':'SaltLakeCity', 'Wisconsin':'Madison', 'Iowa':'DesMoines',
'California':'Sacramento'}
>>> len(capitals)
4
需要谨记,字典并不是根据键来进行有序维护的。第一个添加的键–值对(‘Utah’:‘SaltLakeCity’)被放在了字典的第一位,第二个添加的键–值对(‘California’:‘Sacramento’) 则被放在了最后。键的位置是由散列来决定的。以上示例也说明,len 函数对字典的功能与对其他集合的功能相同。
字典既有运算符,又有方法。表 1-7 和表 1-8 分别展示了它们。keys、values 和 items 方 法均会返回包含相应值的对象。可以使用 list 函数将字典转换成列表。在表 1-8 中可以看到, get 方法有两种版本。如果键没有出现在字典中,get 会返回 None。然而,第二个可选参数可 以返回特定值。
表 1-7 Python 字典支持的运算
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
WrH-1714726198492)]
[外链图片转存中…(img-om0V9d26-1714726198492)]
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新