• Python 04 之变量【列表,元组,集合,字典,字符串】


    😀前言
    Python编程语言中,我们经常会遇到各种数据类型和相应的操作方法。理解和掌握这些基本构造是进行有效编程的前提。在本文中,我们将介绍两种非常重要的数据结构 - 集合和字典,然后我们将深入探讨字符串及其相关的操作和处理方法,包括格式化和切片。我们还将通过示例来详细解释如何使用这些结构和方法,以便你可以在实际编程中轻松应用它们。

    🏠个人主页:尘觉主页
    在这里插入图片描述

    🧑个人简介:大家好,我是尘觉,希望我的文章可以帮助到大家,您的满意是我的动力😉😉

    在csdn获奖荣誉: 🏆csdn城市之星2名
    ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ 💓Java全栈群星计划top前5
    ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ 🤗 端午大礼包获得者
    ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ 🥰阿里云专家博主
    ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ 😉亚马逊DyamoDB结营

    💕欢迎大家:这里是CSDN,我总结知识的地方,欢迎来到我的博客,感谢大家的观看🥰
    如果文章有什么需要改进的地方还请大佬不吝赐教 先在次感谢啦😊

    Python 04 之变量【列表,元组,集合,字典,字符串】

    1、变量类型

    Python 中数据类型可以分为数字型和⾮数字型 。

    1.1 数字型

    • 整型 ( int ) ;

    • 浮点型( float );

    • 布尔型( bool )

      • 真 True ⾮ 0 数 —— ⾮零即真 ;

      • 假 False 0 ;

    1.2 非数字型

    • 列表;

    • 元组;

    • 集合;

    • 字典;

    • 字符串。

    在 Python 中,所有非数字型变量都⽀持以下特点:

    1. 都是一个序列 ;
    2. 通过 变量名[索引] 方式取值 ;
    3. 通过 for in 遍历
    4. 可以计算⻓度、最⼤和最⼩值 。

    2、列表

    List (列表) 是 Python 中使⽤最频繁的数据类型,在其他语⾔中通常叫做数组 ,专⻔⽤于存储 一串信息 。

    1. 列表⽤ [] 定义,列表中的数据之间使⽤ , 分隔 ;

    2. 列表的索引从 0 开始 ;

    3. 索引就是数据在列表中的位置编号,索引⼜可以被称为下标

    注:

    从列表中取值时,如果超出索引范围程序会报错。

    代码示例:

    # 定义一个列表变量,名字叫 names,有三个元素
    names = ["小明", "小红", "小绿"]
    # 显示列表第一个元素的值
    print(names[0])
    # IndexError: list index out of range
    # 错误,列表没有[3]这个值 下标从0开始
    print(names[3])
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    image-20230903164027455

    我们还可以通过dir()函数查看某类型中定义的方法。

    # 定义一个列表变量,名字叫 names,有三个元素
    names = ["小明", "小红", "小绿"]
    # 通过 dir 函数显示列表所有的方法
    print(dir(names))
    
    • 1
    • 2
    • 3
    • 4

    image-20230903164009742

    2.1 列表常用方法

    image-20230903163111914

    代码示例:

    # 定义一个列表变量,名字叫 names,有三个元素
    names = ["小明", "小红", "小绿"]
    # 计算小明在数组中出现的次数
    print(names.count('小明'))
    
    • 1
    • 2
    • 3
    • 4

    image-20230903163941633

    2.2 循环遍历列表

    遍历就是从头到尾依次从列表中获取数据

    # 定义一个列表变量,名字叫 names,有三个元素
    names = ["小明", "小红", "小绿"]
    # 循环遍历列表
    for i in names:
        print(i)
    
    • 1
    • 2
    • 3
    • 4
    • 5

    image-20230903163952668

    在 Python 中,可以使⽤ for 循环遍历所有⾮数字型类型的变量,包括:列表、元组、字典以及字符串。

    2.3 拆包

    拆包就是把一个列表中每个值拆出来, 拆包操作同样适用于元组,集合和字典。

    # 定义一个列表变量,名字叫 names,有三个元素
    names = ["小明", "小红", "小绿"]
    # 通过对列表进行拆包方式获取列表中每个元素的值
    a,b,c = names;
    print(a,b,c) 
    
    • 1
    • 2
    • 3
    • 4
    • 5

    image-20230903163918354

    2.4 列表推导式

    所谓的列表推导式,就是指轻量级的循环创建列表的⽅法 。

    1、基本使用

    # a 的内容为[3, 5, 7, 9]
    a = [x for x in range(3, 10, 2)]
    print(a)
    
    • 1
    • 2
    • 3

    image-20230903163906190

    2、在推导过程中使⽤if

    # a 的内容为[3, 5, 7, 9]
    a = [x for x in range(3, 10) if x % 2 != 0]
    print(a)
    
    • 1
    • 2
    • 3

    image-20230903163855393

    3、公共方法

    image-20230903163246196

    公共方法同样适用于元组,集合,字典,字符串等类型

    示例:

    # 定义一个列表变量,名字叫 names,有三个元素
    names = ["小明", "小红", "小绿"]
    # 判断列表中是否有小明,有就将其删除
    if "小明" in names:
        names.remove("小明")
        # 打印
        print(names)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    image-20230903163831161

    4、元组

    Tuple (元组)与列表类似,不同之处在于元组的元素不能修改;

    示例:

    1、元组⽤ () 定义 。

    # 定义一个元组,名字叫 names,有三个元素
    names = ("小明", "小红", "小绿")
    # 打印
    print(names)
    
    • 1
    • 2
    • 3
    • 4

    image-20230903164059729

    2、元组只有一个元素时,元素后面需要添加逗号

    # 元组只有一个元素时,元素后面需要添加逗号
    names = ("小明",)
    print(names)
    
    • 1
    • 2
    • 3

    image-20230903164153566

    3、定义元组时, ()可以省略

    # 定义元组时, ()可以省略 
    names = "小明",
    print(names)
    
    • 1
    • 2
    • 3

    image-20230903164208204

    4、 元组只有一个元素,尝试后面加和不加逗号的差别

    names = ("小明",)
    names2 = ("小明")
    print(names)
    print(names2)
    
    • 1
    • 2
    • 3
    • 4

    image-20230903164236239

    4.1 元组和列表的差别

    共同点:

    常用方法都差不多。

    for 循环遍历也一样。

    不同点:

    元组的内容不能修改,所以没有增加、修改、删除相关方法。

    列表则相反。

    4.2 元祖和列表之间的转换

    把列表转化为元组目的是让列表不可以被修改,以保护数据安全 ;

    • 使⽤ list 函数可以把元组转换成列表 ;
    • 使⽤ tuple 函数可以把列表转换成元组 。

    示例:

    # 定义一个元组,名字叫 names,有三个元素
    names = ("小明", "小红", "小绿")
    # 将元组转换成列表
    names = list(names)
    print(names)
    # 定义一个列表 名字叫sexs,有三个元素
    sexs = ["男", "女", "未知"]
    # 将列表转换成元组
    sexs = tuple(sexs)
    print(sexs)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    image-20230903163810779

    5、集合

    集合用{}定义

    # 定义一个空集合 set1
    set1 = set()
    
    • 1
    • 2

    注:

    不能通过 变量名 = {}来创建空集合;

    集合和列表的区别:

    • 列表是有序的对象集合 ;
    • 集合是⽆序的对象集合 ;
    • 同一个集合内值不允许重复
    # 定义一个集合 
    set1set1 = {"小明", 33, 1.75}
    
    • 1
    • 2

    集合常⽤操作

    6、字典

    dictionary (字典)通常⽤于存储“键值对” 数据,键与值之间用冒号分隔。

    • 键 key 是索引,同一个字典内,键名不能重复;
    • value 是数据;

    **字典用{}定义:**通过变量名 = {}创建一个空字典

    # 定义一个空字典 
    dict1 = {}
    
    • 1
    • 2

    字典与集合的区别:

    • 集合中只有值 ;
    • 字典是包含键与值的键值对 。
    # 定义一个字典,包含三个键值对
    dict1 = {"name": "小明", "age": 18, "height": 1.75}
    
    • 1
    • 2

    字典常⽤操作

    image-20230903163357048

    示例:

    1、循环遍历字典

    # 定义一个字典dict1,包含三个键值对
    dict1 = {"name": "小明", "age": 18, "height": 1.75}
    
    # n为键,通过dict1[n]可以得到键对应的值
    for n in dict1:
        print("键=%s,值=%s" % (n, str(dict1[n])))
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    2、循环遍历字典二拆包方式 :字典的 items 方法获取字典中的键值对

    items 方法返回包含字典键值对的元组。

    # 定义一个字典 dict1,包含三个键值对
    dict1 = {"name": "小明", "age": 18, "height": 1.75}
    # n 获取 dict1 中的每个键值对
    for n in dict1.items():
        print(n)
    
    • 1
    • 2
    • 3
    • 4
    • 5

    3、通过对元组拆包的方式获取键和值

    # 定义一个字典 dict1,包含三个键值对
    dict1 = {"name": "小明", "age": 18, "height": 1.75}
    # a 为键,b 为值
    for a, b in dict1.items():
        print("键=%s,值=%s" % (a, str(b)))
    
    • 1
    • 2
    • 3
    • 4
    • 5
    1. 以上的输出结果

    image-20230903163731819

    7、字符串

    1. 字符串就是⼀串字符,是编程语⾔中表示⽂本的数据类型。

    2. 在 Python 中可以使⽤⼀对双引号 " 或者⼀对单引号 ’ 定义⼀个字符串。

    3. 虽然可以使⽤ " 或者 ’ 做字符串的转义,但是在实际开发中: 如果字符串内部需要使⽤ " ,可以使⽤ ’ 定义字符串。

    4. 如果字符串内部需要使⽤ ’ ,可以使⽤ " 定义字符串。

    5. 可以使⽤[索引]获取⼀个字符串中指定位置的字符,索引计数从 0 开始

    示例:

    遍历字符串中每个字符

    # 定义一个字符串 str1
    str1 = "求个点赞+关注!"
    for n in str1:
        print(n)
    
    • 1
    • 2
    • 3
    • 4

    image-20230903163647140

    字符串的常⽤方法

    格式化字符串:

    • % 被称为格式化操作符,专⻔⽤于处理字符串中的格式 。
    • 包含 % 的字符串,被称为格式化字符串 。
    • % 和不同的字符连⽤,不同类型的数据需要使⽤不同的格式化字符

    image-20230903163536357

    语法:

    str1 = "姓名:%s, 年龄%d" % ("小明",18)
    
    • 1

    8、字符串的切片

    1. 切⽚⽅法适⽤于字符串、列表、元组 ;
    2. 切⽚使⽤索引值来限定范围,从⼀个⼤的字符串中切出⼩的字符串 ;
    3. 字符串、列表和元组都是有序的集合,都能够通过[索引]获取到对应的数据 。

    1、切片语法:字符串[开始索引:结束索引:步⻓]

    str1 = "求个点赞和关注"
    s = str1[2:6:1]
    print(s)
    
    • 1
    • 2
    • 3

    image-20230903163615334

    注:

    1. 指定的区间属于左闭右开型 [开始索引, 结束索引) => 开始索引 >= 范围 < 结束索引从起始位开始,到结束位的前⼀位结束(不包含结束位本身) 。

    2. 从头开始,开始索引数字可以省略,冒号不能省略

    3. 到末尾结束,结束索引数字可以省略,冒号不能省略

    4. 步⻓默认为 1 ,如果连续切⽚,数字和冒号都可以省略

    索引的顺序和倒序

    在 Python 中不仅⽀持顺序索引,同时还⽀持倒序索引,所谓倒序索引就是从右向左计算索引 。

    str1 = "求个点赞和关注"
    s = str1[-1]
    print(s)
    
    • 1
    • 2
    • 3

    image-20230903164439386

    代码示例:

    # 截取从 2 ~ 末尾的字符串 定义一个字符串 str1
    str1 = "求个关注和点赞"
    s = str1[2:]
    print(s)
    
    # 截取从开始 ~ 5 位置的字符串 定义一个字符串 str1
    str1 = "求个关注和点赞"
    s = str1[:6]
    print(s)
    
    # 截取完整的字符串 定义一个字符串 str1
    str1 = "求个关注和点赞"
    s = str1[:]
    print(s)
    
    # 字符串的逆序 定义一个字符串 str1
    str1 = "求个关注和点赞"
    s = str1[::-1]
    print(s)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19

    image-20230903164536504
    引,同时还⽀持倒序索引,所谓倒序索引就是从右向左计算索引 。

    str1 = "求个点赞和关注"
    s = str1[-1]
    print(s)
    
    • 1
    • 2
    • 3

    image-20230903164439386
    代码示例:

    # 截取从 2 ~ 末尾的字符串 定义一个字符串 str1
    str1 = "求个关注和点赞"
    s = str1[2:]
    print(s)
    
    # 截取从开始 ~ 5 位置的字符串 定义一个字符串 str1
    str1 = "求个关注和点赞"
    s = str1[:6]
    print(s)
    
    # 截取完整的字符串 定义一个字符串 str1
    str1 = "求个关注和点赞"
    s = str1[:]
    print(s)
    
    # 字符串的逆序 定义一个字符串 str1
    str1 = "求个关注和点赞"
    s = str1[::-1]
    print(s)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19

    image-20230903164536504

    😄总结

    经过本文的学习,我们已经掌握了Python中集合和字典的基本定义和常用操作。我们学会了如何创建和遍历它们,以及如何使用键值对来存储和检索信息。此外,我们还探讨了字符串的各种功能和特点,学习了字符串的切片和格式化操作,它们在处理文本数据时非常有用。

    我们了解到,通过切片可以从现有字符串中提取特定的子字符串,而通过格式化可以创建结构化的字符串输出。这些基本但强大的工具不仅使我们能够更有效地处理数据,还为我们提供了创建更复杂、更强大的Python程序的基础。

    现在,你已经具备了使用Python中的这些基本数据结构和字符串操作的知识,我们期待你将这些知识应用于更高级的项目和程序中,展示Python编程的力量和灵活性。希望你能通过实践来巩固和深化你的理解,祝您编程愉快!

    😁热门专栏推荐
    想学习vue的可以看看这个

    java基础合集

    数据库合集

    redis合集

    nginx合集

    linux合集

    手写机制

    微服务组件

    spring_尘觉

    springMVC

    mybits

    等等等还有许多优秀的合集在主页等着大家的光顾感谢大家的支持

    🤔欢迎大家加入我的社区 尘觉社区

    文章到这里就结束了,如果有什么疑问的地方请指出,诸佬们一起来评论区一起讨论😁
    希望能和诸佬们一起努力,今后我们一起观看感谢您的阅读🍻
    如果帮助到您不妨3连支持一下,创造不易您们的支持是我的动力🤞

  • 相关阅读:
    群玩小游戏sdk一键接入
    glog与pugi::xml使用方法
    火狐拖放后,总会默认打开百度搜索,如果是图片,则会打开图片。
    【gltf-pipeline】安装gltf-pipeline 进行文件格式转换
    Day29-Docker学习教程系列(一)-Docker简介
    USB /OTG 接线
    同花顺_代码解析_技术指标_A
    LeetCode ❀ 66. 加一 / python
    未来学习规划 - java篇
    ⌈·M·e·r·c·u·r·y·⌋ AC自动机·杂题选做
  • 原文地址:https://blog.csdn.net/apple_67445472/article/details/132869260