python二维列表

python二维列表

  • 1. 本质
  • 2. 创建二维列表
  • 3. “读” 二维列表
  • 4. "写" 二维列表
  • 5. 遍历二维列表
  • 6. 练习1
  • 7. 练习2

1. 本质

二维数组本质上是以列表作为列表元素的列表。
简单理解就是:二维数组的元素还是列表

2. 创建二维列表

例如:创建2行3列的二维数组,也就是两个一维列表,每个一维列表有三个元素(相当于2行3列)
arr = [
  [0,1,2],
  [0,1,2]
]
python二维列表_第1张图片

# 1. 创建一个空列表
arr = [] 
for i in range(2):
    arr.append([])
    for j in range(3):
        arr[i].append(j)


# 2. 遍历列表
for i in arr:
    print(i)

打印结果:
[0, 1, 2]
[0, 1, 2]

3. “读” 二维列表

注意:
[0][0] 代表第1个一维数组的第一个元素(第一行一列)
[1][0] 代表第2个一维数组的第一个元素(第二行一列)

arr = [
    [0,1,2],
    [0,1,2]
]

print(arr[0][1]) # 1
print(arr[1][0]) # 0

4. “写” 二维列表

arr = [
    [],[]
]

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

结果:[[1, 2, 3], [4, 5, 6]]
arr = [
    [0,1],[0,1]
]

arr[0][1] = 3
arr[1][1] = 6

打印结果:[[0, 3], [0, 6]]

5. 遍历二维列表

arr = [
    [0,1,2],[0,1,2]
]
for i in range(2):	# 外层循环列表
    for j in range(3):	# 内循环每个列表中的元素
        print(arr[i][j],end=' ')
    print('')

6. 练习1

  1. 将二维列表arr变为如下效果:
    python二维列表_第2张图片

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

"""
1 4
2 5
3 6
1的下标:[0][0]   4的下标:[1][0]
2的下标:[0][1]   5的下标:[1][1]
3的下标:[0][2]   5的下标:[1][2]
"""
# 1. 解法1
for j in range(3):
    for i in range(2):
        print(arr[i][j],end=' ')
    print()
   
# 2. 解法2
for i in range(3):
   for j in range(2):
       print(arr[j][i],end=' ')
   print()

python二维列表_第3张图片
2. 如果变为下图所示呢?
python二维列表_第4张图片

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

# 1. 解法1
for j in range(3):
    for i in range(1,-1,-1):
        print(arr[i][j],end=' ')
    print()

# 2. 解法2
for i in range(3):
   for j in range(1,-1,-1):
       print(arr[j][i],end=' ')
   print()
   

7. 练习2

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

arr.reverse() 

for i in range(3):
    for j in range(5):
        print(arr[i][j],end=' ')
    print()

打印结果:
3 4 5 6 7 
5 6 7 8 9 
1 2 3 4 5

你可能感兴趣的:(Python,python)