Python学习日记:列表、字典、集合以及元组

本文深入介绍了Python中的四种基本数据结构:列表、字典、集合和元组。详细阐述了它们的定义、特点、操作方法及应用场景,包括增删改查等操作,并给出了实例说明。同时,强调了各数据结构在实际编程中的重要作用,如列表的有序性和可变性,字典的键值映射,集合的去重特性以及元组的不可变性。这些知识对于理解和高效使用Python至关重要。
摘要由CSDN通过智能技术生成
Hello NanFeng

列表

什么是列表 ?

  • 是一个有序的项目集合
  • 是一个可变数据类型
  • 是一个容器数据类型,可以存放任何数据类型(内建函数和布尔类型都可以)

定义方式
1.直接定义

lst = [a, "b", 3]

2.list()方法

lst(iterable)

注意list()方法只能放入可迭代对象,list()方法可以把可迭代对象转换为列表。
列表作为容器中的序列,它支持序列的基本操作,包括索引、切片、序列加、成员关系判断、len()、max()、min()等统计类方法,详见另一篇博客——容器类型

列表的增删改查

增:
1.append()

lst.append(obj)

追加新值到列表末尾
2.insert()

lst.insert(index, obj)

指定序列插入一个新值
3.extend()

lst.extend(seq)

在列表末尾一次性追加另一个序列中的多个值
删:
1.remove()

lst.remove(obj)

删除列表中指定元素,元素不存在会报错
2.python关键字 del

del lst[index]

结合索引删除元素,同理其他序列也可以使用
3.clear()

lst.clear()

清空整个列表,其他序列也可以使用
4.pop()

del_obj = lst.pop()

删除列表最后一个元素并返回这个删除值

切片赋值

lst[index] = new_obj

或者

lst[index1:index2] = new_seq

指定序列赋值,或指定序列范围进行赋值

1.index()

obk = lst.index(obj)

查找某值得序列
2.count()

lst.count(obj)

统计一个值在列表里出现了多少次

字典

什么是字典?

  • python里使用键值映射的数据结构
  • 字典是无序的(无序列不可切片)
  • 键——key是天生去重的,字典中不能存在同一个key,且key必须是可哈希对象(目前可知所有的不可变数据全是可哈希对象)

定义方式

dict = {Hash obj:value}

字典的增删改查

增、改
1.key值

dict[key] = value

如果key存在是重新赋值,不存在则是添加
2.update()

dict1.update(dict2)

合并两个字典且不改变第一个字典的内存地址
3. **解包与打包

dict(dict1, **dict2)

还是合并两个字典,但会改变第一个字典的内存地址

1.pop()
pop()删除字典元素时,必须要在括号里写入key
2.popitem()

dict.popitem()

默认删除字典里最后一个,并以元组的形式返回这个键值对

1.key值取值

a = dict[key]

通过指定key来获取key对应的value,没有这个key会报错
2.get取值

dict.get(key)

好处是没有这个key不会报错,会返回none

集合

什么是集合?

  • 集合可以理解为没有valie只有key的字典,所以只可以存放可哈希对象
    一串有重读字符的字符串可以通过转换为集合来去重取唯一

集合的增删改查

set.update()
set.remove() 没有就报错
set.discard() 没有不会报错

集合的运算

交、并、补

s1 = {1,2,3}
s2 = {2,3,4}
# 并集:
s1 | s2     # |这个是或
# 交集:
s1 & s2
# 差集
s2 - s1
# 对称差集
s1 ^ s2   {1,4} # 就是并集减去交集

元组

什么是元组?

  • 元组是有序的项目类型
  • 可以存放任何数据类型

定义方式

 tuple = (obj,)

注意元组里只有一个元素需要在元素后加个逗号,否则可能会被系统识别错误
元组的增删改查
元组作为有序类型,可以使用切片赋值和切片访问,不在过多演示。

Hello NanFeng
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值