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绘图利器:使用Canvas创建交互式数据可视化

    Python绘图利器:使用Canvas创建交互式数据可视化Python作为一种开源的编程语言,在数据科学和机器学习领域受到广泛应用。随着数据规模的扩大和需求的不断提高,数据可视化技术的重要性也越来越突出。尤其是在大数据时代,数据时常呈现为超出人们容量的规模,需要用更高效的方法可视化来加以理解和传达,因此本文将会介绍Python中一个非常强大的绘图工具Canvas,来帮您创建交互式数据可视化。

    2024-01-18
    59
  • 慢查询SQL排查[通俗易懂]

    慢查询SQL排查[通俗易懂]原文链接:https://www.caituotuo.top/c56bd0c5.html 0. 前言 假设一次执行20条SQL,我们如何判断哪条SQL是执行慢的烂SQL,这里就需要用到慢查询日志。 在

    2023-05-14
    102
  • 五个值得掌握的 Python Tuple 用法

    五个值得掌握的 Python Tuple 用法Python 中的 Tuple (元组)是一种不可变序列。

    2024-01-11
    60
  • Python教育领域佼佼者——World Wise Tutoring

    Python教育领域佼佼者——World Wise TutoringPython编程语言凭借其简单易学、高效强大的特性,越来越受到各行各业的欢迎。在教育领域,Python也成为了热门的编程语言之一。World Wise Tutoring是一家专注于Python教育的机构,提供多种Python课程,帮助学生快速掌握Python编程语言。以下将从多个方面对World Wise Tutoring进行详细阐述。

    2024-03-07
    34
  • Mysql Join-连接查询(中)

    Mysql Join-连接查询(中)Mysql Join 连接查询(中) 认识 就我平时的数据接触来看, 连接查询也没有很复杂,不够是非常需要耐心和逻辑的, 一点点将数据查出来, 拼接等. 没有什么技巧, 多练习就会了. 无非就是 表之

    2022-12-17
    104
  • windows启动 MySQL出错「建议收藏」

    windows启动 MySQL出错「建议收藏」C:Program Filesmysql-5.7.10-winx64in># 启动mysql服务net start mysql# 停止mysql服务net stop mysql 提示信息

    2023-02-22
    109
  • 用Python的Time模块轻松处理时间数据

    用Python的Time模块轻松处理时间数据Time(时间)是计算机系统中的重要概念,程序中经常需要进行时间相关的操作。Python中的Time模块提供了很多处理时间的工具,包括获取当前时间、格式化时间、休眠等功能。Time模块的使用对于开发者来说非常重要,可以提高开发效率。

    2024-01-17
    68
  • 解决Python中write argument必须为str而非bytes的错误

    解决Python中write argument必须为str而非bytes的错误a href=”https://beian.miit.gov.cn/”苏ICP备2023018380号-1/a Copyright www.python100.com .Some Rights Reserved.

    2024-01-06
    72

发表回复

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