Python索引技巧

Python索引技巧Python中最基本的索引就是通过下标获取列表、元组或字符串中的元素。下标从0开始,负数表示从后往前数。例如,a = [1, 2, 3, 4], a[0]表示获取第一个元素1,a[-1]表示获取最后一个元素4。

一、基础索引

Python中最基本的索引就是通过下标获取列表、元组或字符串中的元素。下标从0开始,负数表示从后往前数。例如,a = [1, 2, 3, 4], a[0]表示获取第一个元素1,a[-1]表示获取最后一个元素4。

    a = [1, 2, 3, 4]
    print(a[0])  # 输出1
    print(a[-1])  # 输出4

字符串也可以通过下标获取其中的某个字符。

    s = "hello"
    print(s[0])  # 输出h
    print(s[-1])  # 输出o

元组也可以通过下标获取其中的元素。

    t = (1, 2, 3, 4)
    print(t[0])  # 输出1
    print(t[-1])  # 输出4

二、切片索引

切片索引可以用来获取列表、元组或字符串中的某一部分。切片索引的形式为[start:end:step],其中start表示起始位置,默认为0;end表示结束位置,默认为最后一个元素的下一个位置;step表示步长,默认为1。切片索引不包括end位置的元素。

    a = [1, 2, 3, 4, 5]
    print(a[1:3])  # 输出[2, 3]
    print(a[:3])  # 输出[1, 2, 3]
    print(a[::2])  # 输出[1, 3, 5]

字符串也可以使用切片索引。

    s = "hello"
    print(s[1:3])  # 输出"el"
    print(s[:3])  # 输出"hel"
    print(s[::2])  # 输出"hlo"

元组也支持切片索引。

    t = (1, 2, 3, 4, 5)
    print(t[1:3])  # 输出(2, 3)
    print(t[:3])  # 输出(1, 2, 3)
    print(t[::2])  # 输出(1, 3, 5)

三、扩展切片

Python3.9之后新增了扩展切片,可以用来获取列表、元组或字符串中间隔的多个元素。扩展切片索引的形式为[start:end:step1, step2],其中step1表示步长,step2表示间隔数。扩展切片索引不包括end位置的元素。

    a = [1, 2, 3, 4, 5, 6, 7, 8, 9]
    print(a[::2, 2])  # 输出[1, 4, 7]
    print(a[1:7:2, 3])  # 输出[4, 7]

字符串也可以使用扩展切片索引。

    s = "hello world"
    print(s[::2, 2])  # 输出"hlwl"
    print(s[1:7:2, 3])  # 输出"l w"

元组也支持扩展切片索引。

    t = (1, 2, 3, 4, 5, 6, 7, 8, 9)
    print(t[::2, 2])  # 输出(1, 4, 7)
    print(t[1:7:2, 3])  # 输出(4, 7)

四、布尔索引

布尔索引可以用来根据条件获取列表、元组或字符串的部分元素。条件通常为一个表达式或一个布尔数组,结果是一个布尔数组,其中True表示该位置符合条件,False表示不符合条件。可以将布尔数组作为索引获取列表、元组或字符串的部分元素。

    a = [1, 2, 3, 4, 5, 6, 7, 8, 9]
    b = [True, False, False, True, False, False, True, False, False]
    c = [x > 5 for x in a]
    print(a[b])  # 输出[1, 4, 7]
    print(a[c])  # 输出[6, 7, 8, 9]

字符串也可以使用布尔索引。

    s = "hello world"
    b = [True, False, False, True, False, False, True, False, False, False, False]
    c = [x.isalpha() for x in s]
    print(s[b])  # 输出"hlo"
    print(s[c])  # 输出"helloworld"

元组也支持布尔索引。

    t = (1, 2, 3, 4, 5, 6, 7, 8, 9)
    b = [True, False, False, True, False, False, True, False, False]
    c = [x > 5 for x in t]
    print(t[b])  # 输出(1, 4, 7)
    print(t[c])  # 输出(6, 7, 8, 9)

五、总结

Python中的索引技巧非常丰富,掌握好这些技巧可以大大提高编程效率。基础索引、切片索引、扩展切片索引和布尔索引都是非常实用的技巧。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/23056.html

(0)
上一篇 2023-12-09
下一篇 2023-12-09

相关推荐

  • 怎么用python写一个网站(用Python写网站)

    怎么用python写一个网站(用Python写网站)造轮子是最好的一种学习方式,本文尝试从0开始造个Python Web框架的轮子,我称它为 ToyWebF 。

    2023-12-03
    42
  • 「Flink」理解流式处理重要概念「建议收藏」

    「Flink」理解流式处理重要概念「建议收藏」什么是流式处理呢?这个问题其实我们大部分时候是没有考虑过的,大多数,我们是把流式处理和实时计算放在一起来说的。我们先来了解下,什么是数据流。数据流(事件流)数据流是无边界数据集的抽象我们之前接触的数据

    2023-01-25
    71
  • windows安装mariadb失败_windows10怎么安装

    windows安装mariadb失败_windows10怎么安装参考连接: https://mariadb.com/kb/en/mysql_install_dbexe/ 下载压缩包,解压,然后将bin文件夹加入Path。 然后打开CMD窗口执行安装命令:(管理员…

    2023-03-18
    83
  • 截取中间字符串的函数_sprintf函数的用法

    截取中间字符串的函数_sprintf函数的用法Excel中的函数非常多,但能记住并且真正能运用到实际工作中的人很少。很多小伙伴都问我怎样才能快速记住函数,答案只有一个:多练。不过学习总是有方法的,下面归类了8组文本函数,这样子可以助你快速掌握Excel文本函数的使用,记得转发收藏起来哦~一、文本中提取字符函数——Left函数、Right函数、Mid函数。LEFT函数:用于对单元格的内容进行截取。从左边第一个字符开始截取,截取指定的长度。RIG…

    2023-03-01
    61
  • mongotemplate游标查询_游标使用

    mongotemplate游标查询_游标使用一、什么是游标? 游标(Cursor)是处理数据的一种方法,为了查看或者处理结果集中的数据,游标提供了在结果集中一次一行或者多行前进或向后浏览数据的能力。 游标实际上是一种能从包括多条数据记录的结果…

    2023-02-27
    86
  • Python字典:高效存储和快速查找数据的利器

    Python字典:高效存储和快速查找数据的利器Python字典是一种可变数据类型,用于存储键-值对,是Python中最常用的数据类型之一,也被称为哈希表或关联数组。

    2024-01-09
    31
  • 公众号迁移 原有数据库openid 更新主体openid[亲测有效]

    公众号迁移 原有数据库openid 更新主体openid[亲测有效] 今天一个两年前做的公众号项目 要更改主体,随之而来的是公众号的迁移。 公众号迁移后关注的粉丝也会对应的进行迁移,还会给粉丝发送相关通知。 大体流程如下图 迁移的具体步骤我就不细说了。今天主要…

    2023-03-21
    97
  • Python isnumeric:检查字符串是否是数字

    Python isnumeric:检查字符串是否是数字在Python编程中,我们经常需要对字符串进行操作和处理。其中一个最常见的任务就是检查字符串是否为数字,以确保程序正常地进行下去。Python内置的isnumeric()函数便可用于对字符串进行数字检查。本文将从多个方面介绍该函数,包括使用方法、返回值、案例实践等。

    2024-02-24
    38

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注