Python学习笔记 - 列表常用函数

这篇博客详细介绍了Python中列表的常用操作,包括len()、max()、min()等函数,以及append()、insert()、del()、pop()等方法。还提到了列表的拷贝,区分了浅拷贝和深拷贝的概念。对于每个操作,都给出了清晰的解释和示例。
摘要由CSDN通过智能技术生成

本内容均来自在北京图灵学院Python免费全栈学习的课堂笔记

关于列表的常用函数

  • len():求列表的长度
  • max():求列表中的最大值
  • min():求列表中的最小值
  • index():求列表中指定值的下标
  • list():将其他格式的数据转换成list
    • 要求被转换的数据是可迭代的
  • append():在列表末尾追加数据
  • insert():制定位置插入数据
    • insert(index,data):表示把数据data插入到下标为index的数据的前面
  • del():删除
  • pop():把最后一个元素取出来
  • remove():在列表中删除指定值的数据
    • 注意,使用remove()删除列表中指定值的数据必须要确定该列表中有指定值的数据
  • clear():清空列表,是把列表中的数据全部清空
  • reverse():把列表中的数据顺序反转;注意,reverse()函数是对原列表中的数据进行反转
  • extend():扩展列表,两个列表,把一个列表的所有数据直接拼到另一个列表的后面
  • count():查找列表中指定值的个数
  • copy():拷贝,浅拷贝,使用copy()函数是新建一个列表,即该列表与被拷贝列表的地址是不一样的
# 常用函数案例
s = "我喜欢齐天大圣孙猴子"
a = list(s)
print(a)
print("a中的最小值:",min(a),";","a中的最大值:",max(a))
print(len(a))
b = list(range(4,10))
print(b)
print("b中的最小值:",min(b),";","b中的最大值:",max(b))
# append()案例
print("append()案例:")
b.append(10)
print(b)
# insert()案例
print("insert()案例:")
b.insert(0,3)
print(b)
# pop()案例
print("pop()案例:")
last_ele = b.pop()
print(last_ele)
print(b)
# remove()案例
print("remove()案例:")
print(id(b))
b.remove(3)
print(b)
print(id(b))
# reverse()案例
print("reverse()案例:")
print(b)
b.reverse()
print(b)
# extend()案例
print("extend()案例:")
b.extend(b)
print(b)
# count()案例
a = b.count(4)
print("列表b中有",a,"个数字4")
# clear()案例
b.clear()
# clear()函数只是把列表中的数据清空
print(b)

执行结果:

['我', '喜', '欢', '齐', '天', '大', '圣', '孙', '猴', '子']
a中的最小值: 喜 ; a中的最大值: 齐
10
[4, 5, 6, 7, 8, 9]
b中的最小值: 4 ; b中的最大值: 9
append()案例:
[4, 5, 6, 7, 8, 9, 10]
insert()案例:
[3, 4, 5, 6, 7, 8, 9, 10]
pop()案例:
10
[3, 4, 5, 6, 7, 8, 9]
remove()案例:
2445105025352
[4, 5, 6, 7, 8, 9]
2445105025352
reverse()案例:
[4, 5, 6, 7, 8, 9]
[9, 8, 7, 6, 5, 4]
extend()案例:
[9, 8, 7, 6, 5, 4, 9, 8, 7, 6, 5, 4]
列表b中有 2 个数字4
[]
# 列表类型的变量赋值案例
# 注意:list类型,简单的赋值操作是传地址
a = [1,2,3,4,5,6]
print(a)
b = a
b[2] = 300
print(b)
print(a)
print(id(a)==id(b))
# 为了解决上面问题,则可使用copy()函数,浅拷贝
c = a.copy()
c[0] = 100
print(c)
print(a)
print(id(a)==id(c))

执行结果:

[1, 2, 3, 4, 5, 6]
[1, 2, 300, 4, 5, 6]
[1, 2, 300, 4, 5, 6]
True
[100, 2, 300, 4, 5, 6]
[1, 2, 300, 4, 5, 6]
False
# 深拷贝和浅拷贝的区别
a = [1,2,3,[10,20,30]]
b = a.copy()
print(id(a)==id(b))
print(id(a[3])==id(b[3]))
a[3][1] = 200
print(a)
print(b)
# 由上面案例可知,浅拷贝只拷贝一层内容
# 深拷贝需要使用特定工具
import copy
c = copy.deepcopy(a)
a[3][2] = 300
print(a)
print(c)
print(id(a[3])==id(c[3]))

执行结果:

False
True
[1, 2, 3, [10, 200, 30]]
[1, 2, 3, [10, 200, 30]]
[1, 2, 3, [10, 200, 300]]
[1, 2, 3, [10, 200, 30]]
False
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值