Python数组详解

Python数组详解Python数据类型有许多种,其中之一是数组。数组是一个有序、可变序列,可以容纳任意类型的数据。Python数组的元素可以是数字、字符串、布尔值等,也可以是其他数组或容器类型。

1、什么是Python数组

Python数据类型有许多种,其中之一是数组。数组是一个有序、可变序列,可以容纳任意类型的数据。Python数组的元素可以是数字、字符串、布尔值等,也可以是其他数组或容器类型。

arr = [1, 2, 3, 4, 5] print(arr) # 输出:[1, 2, 3, 4, 5] str_arr = ['a', 'b', 'c'] print(str_arr) # 输出:['a', 'b', 'c'] mix_arr = [1, 'a', True] print(mix_arr) # 输出:[1, 'a', True]

2、创建数组

Python提供了多种创建数组的方式。

2.1 初始化数组

我们可以使用一对方括号 [ ] 来初始化一个数组,方括号里的每个元素之间使用逗号 , 分隔开。这里有几种初始化的方法:

# 创建一个长度为3的int类型数组 int_arr = [0] * 3 print(int_arr) # 输出:[0, 0, 0] # 创建一个长度为4的string类型数组 str_arr = [''] * 4 print(str_arr) # 输出:['', '', '', ''] # 创建一个长度为5的boolean类型数组 bool_arr = [False] * 5 print(bool_arr) # 输出:[False, False, False, False, False]

2.2 使用range()

我们可以使用内置函数range()创建数组,range()函数有三个参数:起始值、终止值和步长。其中起始值和步长都是可选的,如果不指定,它们默认分别为 0 和 1。

arr1 = range(5) arr2 = range(2, 7) arr3 = range(10, 20, 2) print(list(arr1)) # 输出:[0, 1, 2, 3, 4] print(list(arr2)) # 输出:[2, 3, 4, 5, 6] print(list(arr3)) # 输出:[10, 12, 14, 16, 18]

2.3 列表推导式

Python的列表推导式表现简洁,使用方便。在Python中,列表推导式允许将一个序列或其他可迭代对象转换为列表。

arr1 = [x for x in range(5)] arr2 = [2 * x for x in range(1, 6)] arr3 = [x * y for x in range(1, 4) for y in range(1, 3)] print(arr1) # 输出:[0, 1, 2, 3, 4] print(arr2) # 输出:[2, 4, 6, 8, 10] print(arr3) # 输出:[1, 2, 2, 4, 3, 6]

3、数组的基本操作

3.1 访问数组元素

访问数组元素的语法很简单,只需使用索引即可。Python数组的索引从0开始,与许多其他语言相同。

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

3.2 修改数组元素

对于可变类型的数组,我们可以通过索引来修改数组中的元素。值得注意的是,Python数组不支持指定区间元素的修改,只能对指定位置的元素进行修改。

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

3.3 数组切片

数组切片是指从数组中切出一段子数组。Python中可以通过切片操作获取数组的子集,切片操作使用冒号 :来指定起点和终点的索引。

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

4、拓展数组操作

4.1 数组追加

使用append()方法来向数组中追加元素。这将在数组的末尾添加一个元素。

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

4.2 数组插入

使用insert()方法向数组中插入元素。可以指定插入元素的位置。

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

4.3 数组删除元素

我们可以使用del语句删除数组中的元素,也可以使用remove()方法删除数组中的元素。

arr = [1, 2, 3, 4, 5] del arr[2] # 删除第3个元素 print(arr) # 输出:[1, 2, 4, 5] arr.remove(5) print(arr) # 输出:[1, 2, 4]

4.4 数组合并

我们可以使用+运算符将两个数组合并。还可以使用extend()方法向数组中添加元素。

arr1 = [1, 2, 3] arr2 = [4, 5, 6] arr3 = arr1 + arr2 print(arr3) # 输出:[1, 2, 3, 4, 5, 6] arr1.extend(arr2) print(arr1) # 输出:[1, 2, 3, 4, 5, 6]

5、总结

Python的数组提供了多种创建、操作和扩展数组的功能。掌握这些方法可以让开发者更容易地处理多个元素的数据。

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

(0)
上一篇 2024-07-27
下一篇 2024-07-28

相关推荐

  • 荣耀平板ⅴ7pro_荣耀平板5值得买吗

    荣耀平板ⅴ7pro_荣耀平板5值得买吗  上个月荣耀发布一款新品平板电脑——荣耀平板V6,现在距离官方给出公布售价的时间只有几天。我对这款平板电脑可以说是蠢蠢欲动,就希望它的售价不要太高。这款平板电脑可以说是集好用与好玩于一身,对我这种…

    2023-03-09
    154
  • Python Tkinter Scrollbar – 实现滚动窗口的图形用户界面组件

    Python Tkinter Scrollbar – 实现滚动窗口的图形用户界面组件在图形用户界面(GUI)开发中,滚动窗口是一种非常实用的组件,可以扩展用户界面的显示范围,同时可以非常方便地查看大量数据。Python Tkinter 模块提供了 Scrollbar 组件,可以轻松地实现带有滚动条的窗口界面。在本文中,我们将从多个方面对 Python Tkinter Scrollbar 进行详细的阐述。

    2023-12-23
    103
  • redis 集群(文档整理)「建议收藏」

    redis 集群(文档整理)「建议收藏」Redis集群 ·Redis集群提供了一种运行Redis安装的方法,在该安装中,数据会在多个Redis节点之间自动分片。 Redis集群在分区期间还提供了一定程度的可用性,这实际上是

    2023-03-13
    139
  • doevents的python的简单介绍

    doevents的python的简单介绍DoEvents的作用是转让控制权给系统。比如在执行十万次的加法减法运算时,如果不转让控制权,程序看起来就像死了一样,你也不能做任何事直到它结束。转让控制权以后,系统可以做别的事情。

    2023-11-30
    110
  • MySQL学习笔记(16):命令行工具「终于解决」

    MySQL学习笔记(16):命令行工具「终于解决」本文更新于2020-06-14,使用MySQL 5.7,操作系统为Deepin 15.4。 在指定参数选项时有两种方式: “-”+单个缩写字符+值,值前可加上空白符(“-p”选项例外,若加上则认为稍后

    2023-03-20
    143
  • containerd与安全沙箱的Kubernetes初体验

    containerd与安全沙箱的Kubernetes初体验containerd是一个开源的行业标准容器运行时,关注于简单、稳定和可移植,同时支持Linux和Windows。2016年12月14日,Docker公司宣布将Docker Engine的核心组件 …

    2022-12-16
    159
  • Python字符串转整数

    Python字符串转整数a href=”https://beian.miit.gov.cn/”苏ICP备号-1/a Copyright www.python100.com .Some Rights Reserved.

    2024-06-18
    46
  • 4月17日国内新闻_汇编语言DB是什么

    4月17日国内新闻_汇编语言DB是什么TcaplusDB君一直密切关注着游戏行业和数据库行业的动态。以下是TcaplusDB君收集的近期的游戏行业和数据库行业的新闻,汇编整理,献给大家观看。 (本篇文章部分内容来自网络) Epic对于2…

    2023-04-13
    155

发表回复

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