亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Industrial programming >> Python

Python 数组完全指南:创建、操作与高级用法专家详解

什么是 Python 数组?

Python 数组是同类型元素在连续内存中的集合,相比列表提供更高效存储和更快数值运算。内置 array 模块处理创建与操作。

何时使用 Python 数组

需存储大量同类型值并进行数值计算时,数组更省内存、访问更快,尤其适合大数据集。

创建数组语法

导入 array 模块并调用 array.array(typecode, initializer):

import array
my_array = array.array('i', [1, 2, 3])

数组类型码对照表

类型码Python 类型C 类型最小字节数
'u'Unicode 字符Py_UNICODE2
'b'IntSigned char1
'B'IntUnsigned char1
'h'IntSigned short2
'l'IntSigned long4
'L'IntUnsigned long4
'q'IntSigned long long8
'Q'IntUnsigned long long8
'H'IntUnsigned short2
'f'FloatFloat4
'd'FloatDouble8
'i'IntSigned int2
'I'IntUnsigned int2

访问元素

零基索引访问:

import array
balance = array.array('i', [300, 200, 100])
print(balance[1])  # 200

支持负索引与切片:

import array
arr = array.array('q', [3, 9, 6, 5, 20, 13, 19, 22, 30, 25])
print(arr[1:4])   # array('q', [9, 6, 5])
print(arr[7:10])  # array('q', [22, 30, 25])

插入元素

insert(index, value) 在指定位置插入:

import array
balance = array.array('i', [300, 200, 100])
balance.insert(2, 150)
print(balance)  # array('i', [300, 200, 150, 100])

修改元素

数组可变,直接赋值:

import array
arr = array.array('b', [3, 6, 4, 8, 10])
arr[0] = 99
print(arr)  # array('b', [99, 6, 4, 8, 10])

支持拼接:

import array
first = array.array('b', [4, 6, 8])
second = array.array('b', [9, 12, 15])
combined = first + second
print(combined)  # array('b', [4, 6, 8, 9, 12, 15])

删除元素

Pop 按索引移除:

import array
arr = array.array('b', [20, 25, 30])
arr.pop(2)
print(arr)  # array('b', [20, 25])

Del 按位置删除:

import array
arr = array.array('b', [10, 4, 5, 5, 7])
del arr[4]
print(arr)  # array('b', [10, 4, 5, 5])

Remove 删除首个匹配值:

import array
arr = array.array('b', [2, 3, 4])
arr.remove(3)
print(arr)  # array('b', [2, 4])

搜索与索引

index(value) 查找值的索引:

import array
arr = array.array('b', [2, 3, 4, 5, 6])
print(arr.index(3))  # 1

反转数组

原地反转:

import array
arr = array.array('b', [1, 2, 3])
arr.reverse()
print(arr)  # array('b', [3, 2, 1])

转 Unicode 字符串

仅 'u' 类型数组支持 tounicode():

from array import array
p = array('u', [u'\u0050', u'\u0059', u'\u0054', u'\u0048', u'\u004F', u'\u004E'])
print(p)           # array('u', 'PYTHON')
print(p.tounicode())  # PYTHON

统计元素出现次数

count(x) 统计出现次数:

import array
arr = array.array('b', [2, 3, 5, 4, 3, 3, 3])
print(arr.count(3))  # 4

遍历数组

for 循环迭代:

import array
arr = array.array('i', [300, 200, 100])
for x in arr:
    print(x)

总结

Python

  1. C++ 数组完全指南:声明、初始化、多维数组与指针技巧
  2. C++ 动态数组分配实战指南:new/delete、初始化、扩容与内存管理
  3. C# 集合实战教程:ArrayList、Stack、Queue、Hashtable 等核心类型全解析
  4. Python str.count() 完全指南:统计字符与子串出现次数实战
  5. Python format() 字符串格式化完全指南:占位符、格式化规范、类与字典应用
  6. Python 字符串 find() 方法完全指南:语法、参数、替代方案与计数技巧
  7. 精通 Python Lambda 函数:实用示例与最佳实践
  8. Python round() 函数详解与实战示例
  9. 精通 Python map() 函数:语法、示例与最佳实践
  10. Python timeit():精准测量代码执行时间与实战示例
  11. 理解 Python type() 与 isinstance():实战示例详解
  12. Python list.count() 专家指南:语法、示例与性能解析