Python数组

时间:2020-02-23 14:42:26  来源:igfitidea点击:

Python Array包含一系列数据。
在python编程中,没有排他的数组对象,因为我们可以使用list执行所有数组操作。
今天,我们将学习python数组以及可以在python中的数组(列表)上执行的不同操作。
我将假设您具有python变量和python数据类型的基本概念。

Python数组

Python通过其list对象支持所有与数组相关的操作。
让我们从一维数组初始化开始。

Python数组示例

Python数组元素在大括号" []"中定义,并且用逗号分隔。
以下是声明python一维数组的示例。

arr = [ 1, 2 ,3, 4, 5]
print (arr)
print (arr[2])
print (arr[4])

上面的一维数组示例程序的输出将是:

[1, 2, 3, 4, 5]
3
5

数组索引从0开始。
因此变量arr的索引2的值为3。

在其他一些编程语言(例如Java)中,当我们定义数组时,我们还需要定义元素类型,因此我们仅限于在数组中存储该类型的数据。
例如," int brr [5];"仅能存储整数数据。

但是python使我们可以灵活地在同一数组中拥有不同类型的数据。
很酷吧?让我们来看一个例子。

student_marks = ['Akkas' , 45, 36.5]
marks = student_marks[1]+student_marks[2]
print(student_marks[0] + ' has got in total = %d + %f = %f ' % (student_marks[1], student_marks[2], marks ))

它给出以下输出:

Akkas has got in total = 45 + 36.500000 = 81.500000 marks

在上面的示例中,您可以看到student_marks数组具有三种类型的数据-字符串,整数和浮点数。

Python多维数组

python中的二维数组可以声明如下。

arr2d = [ [1,3,5] ,[2,4,6] ]
print(arr2d[0]) # prints elements of row 0
print(arr2d[1]) # prints elements of row 1
print(arr2d[1][1]) # prints element of row = 1, column = 1

它将产生以下输出:

[1, 3, 5]                                                                                                                                                                       
[2, 4, 6]                                                                                                                                                                       
4

同样,我们可以在python中定义三维数组或者多维数组。

Python阵列范例

现在,我们知道了如何在python中定义和初始化数组。
我们将研究可以在python数组上执行的不同操作。

使用for循环遍历Python数组

我们可以使用for循环遍历数组的元素。
以下是for循环遍历数组的简单示例。

arrayElement = ["One", 2, 'Three' ]
for i in range(len(arrayElement)):
 print(arrayElement[i])

下图显示了上述数组示例程序产生的输出。

使用for循环遍历2D数组

下面的代码按行打印元素,然后下一部分打印给定数组的每个元素。

arrayElement2D = [ ["Four", 5, 'Six' ] , [ 'Good',  'Food' , 'Wood'] ]
for i in range(len(arrayElement2D)):
 print(arrayElement2D[i])

for i in range(len(arrayElement2D)):
 for j in range(len(arrayElement2D[i])):
     print(arrayElement2D[i][j])

这将输出:

Python数组追加

arrayElement = ["One", 2, 'Three' ]
arrayElement.append('Four')
arrayElement.append('Five')
for i in range(len(arrayElement)):
 print(arrayElement[i])

新元素"四"和"五"将添加到数组的末尾。

One
2
Three
Four
Five

您还可以将一个数组附加到另一个数组。
以下代码显示了如何执行此操作。

arrayElement = ["One", 2, 'Three' ]
newArray = [ 'Four' , 'Five']
arrayElement.append(newArray);
print(arrayElement)
['One', 2, 'Three', ['Four', 'Five']]

现在,我们的一维数组arrayElement变成了多维数组。

Python数组大小

我们可以使用len函数来确定数组的大小。
让我们看一个简单的python数组长度示例。

arr = ["One", 2, 'Three' ]

arr2d = [[1,2],[1,2,3,4]]

print(len(arr))
print(len(arr2d))
print(len(arr2d[0]))
print(len(arr2d[1]))

Python数组切片

Python提供了一种使用切片符号从另一个数组创建数组的特殊方法。
让我们看一些python数组切片示例。

arr = [1,2,3,4,5,6,7]

#python array slice

arr1 = arr[0:3] #start to index 2
print(arr1)

arr1 = arr[2:] #index 2 to end of arr
print(arr1)

arr1 = arr[:3] #start to index 2
print(arr1)

arr1 = arr[:] #copy of whole arr
print(arr1)

arr1 = arr[1:6:2] # from index 1 to index 5 with step 2
print(arr1)

下图显示了python array slice示例程序输出。

Python数组插入

我们可以使用insert()函数在数组中插入一个元素。

arr = [1,2,3,4,5,6,7]

arr.insert(3,10)

print(arr)

Python数组弹出

我们可以在数组上调用pop函数,以从指定索引处的数组中删除元素。

arr = [1,2,3,4,5,6,7]

arr.insert(3,10)
print(arr)

arr.pop(3)
print(arr)