领取淘宝天猫优惠券:优惠淘 | 欢迎使用随心而码微信小程序,微信搜一搜【随心而码】可直接搜到。

Python 入门笔记——数据类型之 List 类型

Python Hicoder 502℃ 0评论

List,翻译成中文就是列表的意思。

什么是列表?

正式点的解释:List是一种有序集合。
通俗点:许多值(变量)按照一定顺序放到一个篮子里,这个篮子就是 []
即列表用中括号 []表示,[] 中放的每个值用逗号(英文逗号)隔开。

注意:写代码时请将输入法调为英文半角状态

举例:家里所有人的称呼,构成一个列表


family = ['father', 'mother', 'son', 'daughter']
print(family) # family 就是一个列表
# IDLE中运行后输出 ['father', 'mother', 'son', 'daughter']

列表作为一个集合,是有长度的,同字符串,我们可以使用 len() 这个函数来获取列表长度。


family = ['father', 'mother', 'son', 'daughter'] # 定义列表
print(len(family))
# IDLE中运行后输出 4

列表的基本操作

读取列表中的值

与字符串类似,列表可通过下标(索引)和切片的方式读取其值。


loveList = [520, 1314, 'my love', 'my queen']
print(loveList[3]) # 读取loveList的第4个值
# my queen

# 切片
print(loveList[1:]) # 读取loveList第二个值到最后一个值
# [1314, 'my love', 'my queen']
修改列表

利用下标的方式读取并更改值。上一节讲过,字符串是无法修改值的。


numList = [2, 4, 6, 8, 10, 12, 14, 16, 18]
numList[2] = 100 # 将numList的第三个值6修改为100
print(numList)
# [2, 4, 100, 8, 10, 12, 14, 16, 18]
删除列表中的元素

这里使用 del 语句进行删除。


numList = [2, 4, 6, 8, 10, 12, 14, 16, 18]
del numList[4] # 删除numList的第五个值10
print(numList)
# [2, 4, 6, 8, 12, 14, 16, 18]
对数值型列表进行排序

所谓数值型,即列表中的值全部为数字(整数or实数)。我们使用 sorted() 来进行排序,该函数不改变原列表的值。


numList1 = [95, 2, 45, 17, 9, 168, 11]
print(sorted(numList1))
# [2, 9, 11, 17, 45, 95, 168]

print(numList1)
# [95, 2, 45, 17, 9, 168, 11]
对数值型列表求和

利用 sum() 函数进行。该函数不改变原列表的值。


moneyList = [4000, 3500, 5500, 8000, 12000, 30000]
print(sum(moneyList))
# 63000
+、*、成员运算符
  • +:将两个或多个列表组合起来。[1, 3, 5] + [2, 4, 6],得到[1, 2, 3, 4, 5, 6]
  • *:重复列表。[1, 2, 3] * 3,得到[1, 2, 3, 1, 2, 3, 1, 2, 3]
  • in 与 not in:判断值是否在列表中。2 in [1, 2, 3, 4],返回True。

 

注意:+是将两个列表组合,即两个列表中的值按照一定顺序全部放在一个新的列表中。

列表嵌套

即多个列表放到一个列表中。


a = [1, 5, 99]
b = [3.14, '你好']
n = [a, b] # 此时n可以看作一个二维数组,由此类推还有三维、四维
print(n)
# [[1, 5, 99], [3.14, '你好']]

print(n[0]) # 获取列表n的第一个值[1, 5, 99]
# [1, 5, 99]

print(n[0][1]) #获取列表n的第一个值[1, 5, 99]中的第二个值
# 5

专属列表的函数

  • append(obj):在列表尾部添加新的对象obj(新添加一个值)。
  • count(obj):计算对象obj在列表中出现的次数。
  • pop(index=-1):读取并删除index(下标索引)位置的值,默认为最后一个值。
  • reverse():获得反向列表。
  • extend(seq):把序列seq的内容添加到列表中。
  • index(obj):从列表中找出某个值第一个匹配项的索引位置。
  • insert(index, obj):将对象插入到指定下标索引(index)位置。
  • remove(obj):将对象obj从列表中删除。
  • list.clear():清空列表。
  • list.copy():复制列表。
  • list.sort(func=None,key=None,reserve=False):以指定方式排序列表中的成员。

 

func — 可选参数, 如果指定了该参数会使用该参数的方法进行排序。

key — 主要是指定用来进行比较的元素,可不指定,不指定则按默认。

reverse — 排序规则,reverse = True 降序, reverse = False 升序(默认)。

 


list = [2, 6, 8, 19, 14, 6, 18, 2, 6]

list.append(22)
print(list)
# [2, 6, 8, 19, 14, 6, 18, 2, 6, 22]

print(list.count(6))
# 3

list.pop(2) # 删除下标为2的元素(值)
print(list)
# [2, 6, 19, 14, 6, 18, 2, 6, 22]

list.insert(2, 8) # 在下标为2的位置插入8
print(list)
# [2, 6, 8, 19, 14, 6, 18, 2, 6, 22]

list.sort() # 按默认进行排序
print(list)
# [2, 2, 6, 6, 6, 8, 14, 18, 19, 22]

练一练

将上面的代码依次复制保存到几个文件中,在IDLE中运行看看结果吧。

转载请注明:随心而码 » Python 入门笔记——数据类型之 List 类型

喜欢 (3)