Python中的容器类型介绍

标题: Python中的容器类型简介
🌞欢迎来到python的世界 
💌欢迎关注🎉点赞👍收藏⭐️留言📝
🌠本阶段属于练气阶段,希望各位朋友顺利完成突破
✉️希望可以和大家一起完成进阶之路!
一、概述

在Python中,"容器"是指可以存储多个元素的数据结构。包括列表、元组、字典、集合和字符。作为python学习的基础,到底重点在哪里呢?我们应该如何学习?

我总结了几个学习思路:

1.划分可变和不可变:可变类型我们从增删改查的思路进行研究,不可变类型我们从查的思路进行研究

2.遍历容器类型:具体看下面看每个容器类型最下举例说明

3.容器类型的嵌套:在整个文章的最后进行介绍

4.容器类型自身的Api 和公共的Api:这个具体直接看下面的代码介绍

可变的容器有:列表,字典,集合

不可变的容器:有元组,字符串,虽然不可改变,可以通过做和思想得到新的元组或者字符串

​ 解释:

str1 = 'adc'
str2 = 'cdb'
str1 = str2 + str1
print(str1)  # 输出结果:cdbadc
tuple1 = (1, 2, 3)
tuple2 = (4, 5, 7)
tuple1 = tuple2 + tuple1  # 输出结果:(4, 5, 7, 1, 2, 3)
print(tuple1)

二、列表(List)
  • 定义: 列表是Python中的一个可变容器,可以有序地存储多个元素。

  • 示例: my_list = [1, 2, 3, 4, 5]

  • 特点: 可变、有序,可通过索引访问元素。

  • 举例说明:

  • """
    1. 因为列表是可变类型的容器我们从从增删改查的角度去研究
    2.这里我都没有进行print(),因为前后会受影响,具体想看运行结果,建议copy到pycharm 运行的时候把其他的注释掉或者可以前后都加print()对比前后之执行结果
    """
    
    my_list = [1, 2, 3, 4, 5]
    # 增
    my_list.append(6)  # 增加一个元素
    my_list.extend(my_list)  # 增加一个容器类型的数据,可以是元组,列表,集合,如果是字典增加的是键值
    my_list.insert(2, 5)  # 在对应的索引为2增加一个元素'5'
    
    # 删
    my_list.pop(1)  # 根据索引进行删除
    my_list.remove(2)  # 根据元素进行删除
    my_list.clear()  # 清楚列表中的所有元素
    del my_list     # 从内存中删除整个列表,列表对象也不存在了
    
    
    # 改
    
    my_list.sort()  # 给了列表进行升序排序
    
    my_list.reverse()  # 是列表进行反转,升序变降序,降序变升序
    my_list[0] = '4'  # 根据修改了索引0 的值为字符串'4'
    
    # 查
    A = my_list.index(5)  # 查元素'5'在列表中在索引位置,返回的是索引
    B = my_list.count(5)  # 查看元素'5'在列中中有几个
    print(A)
    print(B)
    
    
三、字典(Dictionary)
  • 定义: 字典是一个无序的键值对集合,通过键来访问对应的值。

  • 示例: my_dict = {'a': 1, 'b': 2, 'c': 3}

  • 特点: 无序、键值对存储,通过键访问值。

  • 举例说明

    """
    1. 因为字典也是可变类型的容器我们从从增删改查的角度去研究
    2.这里我都没有进行print(),因为前后会受影响,具体想看运行结果,建议copy到pycharm 运行的时候把其他的注释掉或者可以前后都加print()对比前后之执行结果
    """
    my_dict = {'a': 1, 'b': 2, 'c': 3}
    
    # 增
    my_dict['d'] = 9  # 注意对于字典来说如果键值不存在,就创建,存在就是修改,参考下面的"查"
    print(my_dict)
    
    # 删
    my_dict.pop('a')  # 根据键进行删除
    my_dict.clear()  # 清除字典里的所有数据,但是字典对象不会删除,对象地址任然在内存中保存
    # del my_dict  # 从内存中彻底删除
    
    # 改
    my_dict['d'] = 6  # 注意对于字典来说如果键值不存在,就创建,存在就是修改,参考上面的'改'
    print(my_dict)
    
    # 查
    A = my_dict.items()  # 返回列表套元组的数据,但不是真正的列表 dict_items([('a', 1), ('b', 2), ('c', 3)])
    B = my_dict.values()  # 返回全是键值的列表,但不是真正的列表  dict_values([1, 2, 3])
    C = my_dict.keys()  # 返回全是键名的列表,但不是真正的列表  dict_keys(['a', 'b', 'c'])
    print(A)
    print(B)
    print(C)
    
    
四、元组(Tuple)
  • 定义: 元组与列表类似,但它是不可变的,一旦创建不能修改。

  • 示例: my_tuple = (1, 2, 3, 4, 5)

  • 特点: 不可变、有序,可通过索引访问元素。

  • 举例说明:

  • """
    1. 因为元组是不可变类型的容器我们从查
    2.我们可以把元组看成不可变的列表去理解即可
    
    """
    my_tuple = (1, 2, 3, 4, 5)
    
    # 查
    A = my_tuple.index(5)  # 查元素'5'在元组中在索引位置,返回的是索引
    B = my_tuple.count(5)  # 查看元素'5'在元组中有几个,返回的的个数
    C = len(my_tuple)    # 查看元组的长度,有几个元素就返回机
    print(A)    # 打印结果:4
    print(B)    # 打印结果:1
    print(C)    # 打印结果:5
    
五、集合(Set)
  • 定义: 集合是一个无序的、元素不重复的集合。

  • 示例: my_set = {1, 2, 3, 4, 5}

  • 特点: 无序、元素不重复。

  • 举例说明:

  • """
    1. 因为集合是可变类型,可以进行增删改查,但是我们实际开发中很少去用,一般我们应用集合的不可重复性,进行对列表的去重工作
    2.对于集合是无序的
    """
    
    my_set = {1, 2, 3, 4, 5}
    
    # 增
    my_set.add(7)  # 在集合随机位置增加元素"7"
    print(my_set)
    # 删
    my_set.pop()
    print(my_set)
    # my_set.clear()
    # my_set.remove(5)
    
    # 查 (对于元组是无序的就没与办法通过索引进行查找)
    len(my_set)
    max(my_set)
    min(my_set)
    
    # 重点--重点--重点(重要的事情说三遍,对于集合来说我们应用最多的场景就是给列表去重)
    list2 = [1, 2, 4, 5, 5, 5, 5, 6, 7, 8]
    set1 = set(list2)
    print(set1)   # 打印结果:{1, 2, 4, 5, 6, 7, 8}
    list2 = list(set1)
    print(list2)
    
六、字符串(String)
  • 定义: 字符串主要用于表示文本,也可以看作字符的容器,但在Python中字符串是不可变的。

  • 示例: my_string = "Hello, World!"

  • 特点: 不可变、有序。

  • 举例说明:

  • """
    1. 因为字符产是不可变类型的容器我们从查
    2.对于字符串来说,有几个比较特殊api ,可以对字符串进行操作生成新的字符串,但是字符串本身不会改变
    
    """
    my_string = "Hello, World!"
    
    # 查
    print(my_string.index('o'))  # 查字符串中子串第一次出现的位置   ---注意查不到就报错
    print(my_string.rindex('o'))  # 查字符串中子串最后一次出现的位置  ---注意查不到就报错
    print(my_string.find('o'))  # 查字符串中子串第一次出现的位置   ---注意查不到 返回-1
    print(my_string.rfind('o'))  # 查字符串中子串最后一次出现的位置  ---注意查不到 返回-1
    
    # 生成新的字符串
    print(my_string.split('o'))  # 打印结果为: ['Hell', ', W', 'rld!'] 切片生成一个新的列表
    print(my_string.replace('o', 'O', 2))  # 结果为:HellO, WOrld! 生成新的字符串打印
    print(my_string)    # 打印结果:Hello, World!,,,,打印原来的字符串的原因是,告诉对于以上两步,是生成新的列表或字符串,对原来的字符串没有影响
    
七、公共的api
  • 举例说明:
"""
1.对于公共的api 分为运算符 和函数
    运算符: "*", "+", "in",  "not in"
    函数: max() , min() , range(), len()
    下面就以 列表,其他容量类型类似
"""

list_data = ["apple", "banana", "orange"]
list_data2 = ["apple1", "banana1", "orange1"]

print(list_data * 2)  # 打印结果:['apple', 'banana', 'orange', 'apple', 'banana', 'orange']
print(list_data + list_data2)  # 打印结果:['apple', 'banana', 'orange', 'apple1', 'banana1', 'orange1']
print('apple' in list_data2)  # 打印结果:False
print('apple_1' not in list_data2)  # 打印结果:True
print(max(list_data))    # 打印结果:orange
print(min(list_data))     # 打印结果:apple
for i in list_data:      # # 遍历列表
    print(i)  # 打印结果:apple banana orange

for i in range(3):
    print(list_data[i])  # 打印结果:apple banana orange

八、总结
本文介绍了Python中的几种主要容器类型,包括列表、元组、字典、集合和字符串。这些容器类型在Python编程中非常常用,掌握它们的使用对于提高编程效率和数据处理能力非常重要。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值