Python数组是一种常见的数据结构类型,其中所有元素都必须具有相同的数据类型。 在Python编程中,数组可以由“数组”模块处理。 如果使用数组模块创建数组,则数组的元素必须为相同的数字类型。
在此Python数组文章中,您将学习,
当需要使用许多相同类型的变量时,可以使用Python数组。 它也可以用来存储数据集合。 当您必须动态处理数据时,数组特别有用。 Python阵列使用的内存更少,因此比list快得多。
您可以使用以下语法在Python中声明数组,同时对其进行初始化。
arrayName = array.array(type code for data type, [array,items])
下图说明了语法。
在python中,我们使用以下语法创建数组:
Class array.array(type code[,initializer])
For Example
import array as myarray
abc = myarray.array('d', [2.5, 4.9, 6.7])
上面的代码创建一个具有整数类型的数组。 字母“ d”是类型代码。
下表显示了类型代码:
如何访问数组元素?
您可以使用其索引访问任何数组项。
语法是
arrayName[indexNum]
For example,
import array
balance = array.array('i', [300,200,100])
print(balance[1])
Output:
200
下图说明了按数组索引访问数组项的基本概念。
访问数组项
在这里,我们使用其索引1来访问数组的第二个值。其输出将为200,这基本上是平衡数组的第二个值。
数组索引以0开头。您还可以使用-1索引访问数组的最后一个元素。
Example:
import array as myarray
abc = myarray.array('d', [2.5, 4.9, 6.7])
print("Array first element is:",abc[0])
print("Array last element is:",abc[-1])
Output:
Array first element is: 2.5
Array last element is: 6.7
You can also access elements by using the ‘:’ operator.
Example:
import array as myarray
abc= myarray.array('q',[3,9,6,5,20,13,19,22,30,25])
print(abc[1:4])
print(abc[7:10])
Output:
array('q', [9, 6, 5])
array('q', [22, 30, 25])
该操作称为切片操作。
Python数组插入操作使您可以在数组的开始,结尾或任何给定索引处将一个或多个项目插入到数组中。 此方法需要两个参数index和value。
语法是
arrayName.insert(index, value)
例:
让我们在数组的第二项之后添加一个新值。 当前,我们的余额数组包含三个项目300、200和100。请考虑第二个数组项目,其值为200,索引为1。
为了在索引1的“之后”插入新值,您需要在insert方法中引用索引2,如下所示:
import array
balance = array.array('i', [300,200,100])
balance.insert(2, 150)
print(balance)
Output:
array('i', [300,200,150,100])
Example 2:
import array as myarr
a=myarr.array('b',[2,4,6,8,10,12,14,16,18,20])
a.insert(2,56)
print(a)
Output:
array('b', [2, 4, 56, 6, 8, 10, 12, 14, 16, 18, 20])
在Python中,数组是可变的。 可以通过以下语法对其进行修改:
Object_name[index]=value;
Example:
import array as myarr
a=myarr.array('b',[3,6,4,8,10,12,14,16,18,20])
a[0]=99
print(a)
Output:
array('b', [99, 6, 4, 8, 10, 12, 14, 16, 18, 20])
我们还可以对数组执行串联操作。
Example:
import array as myarr
first = myarr.array('b', [4, 6, 8])
second = myarr.array('b', [9, 12, 15])
numbers = myarr.array('b')
numbers = first + second
print(numbers)
Output:
array('b', [4, 6, 8, 9, 12, 15])
上面的代码连接了两个变量,分别称为“第一个”和“第二个”。 结果存储在名为“ number”的变量中。
代码的最后一行用于打印两个数组。
在Python中,开发人员可以使用array.pop([a]])语法从数组中弹出元素。
Example:
import array as myarr
first = myarr.array('b', [20, 25, 30])
first.pop(2)
print(first)
Output:
array('b', [20, 25])
您还可以使用Python的’del’语句。
Example
import array as myarr
no = myarr.array('b', [10, 4, 5, 5, 7])
del no[4]
print(no)
Output:
array('b', [10, 4, 5, 5])
通过此操作,您可以按值从数组中删除一项。 此方法仅接受一个参数值。 运行此方法后,将重新排列数组项,并重新分配索引。
语法是
arrayName.remove(value)
Example:
让我们从数组中删除“ 3”的值
import array as myarray
first = myarray.array('b', [2, 3, 4])
first.remove(3)
print(first)
Output:
array('b', [2, 4])
通过此操作,您可以根据值在数组中搜索。 此方法仅接受一个参数值。 这是一种非破坏性方法,这意味着它不会影响数组值。
语法是
arrayName.index(value)
Example:
让我们在数组中找到“ 3”的值。 此方法返回搜索值的索引。
import array as myarray
number = myarray.array('b', [2, 3, 4, 5, 6])
print(number.index(3))
Output:
1
此操作将返回所提到元素首次出现的索引。
此操作将反转整个阵列。
Syntax: array.reverse()
import array as myarray
number = myarray.array('b', [1,2, 3])
number.reverse()
print(number)
Output:
array('b', [3, 2, 1])
将数组转换为Unicode:
Python数组可以转换为Unicode。 为了满足此需求,该数组必须为’u’类型。 否则,您将收到“ ValueError”。
Example:
from array import array
p = array('u',[u'\u0050',u'\u0059',u'\u0054',u'\u0048',u'\u004F',u'\u004E'])
print(p)
q = p.tounicode()
print(q)
Output:
array('u', 'PYTHON')
PYTHON
您还可以使用array.count(x)语法对数组中元素的出现进行计数。
xample:
import array as myarr
number = myarr.array('b', [2, 3, 5, 4,3,3,3])
print(number.count(3))
Output:
4
您可以使用循环遍历python数组,如下所示:
import array
balance = array.array('i', [300,200,100])
for x in balance:
print(x)
Output:
300
200
100