Python——二维列表和zip()

本文详细介绍了Python中二维列表的创建、查询方法,包括基本元素操作和使用zip函数进行元素对应。重点展示了如何通过for循环和zip()函数处理列表数据,以及在实际场景中的应用实例。
摘要由CSDN通过智能技术生成

一、二维列表

    列表的元素仍是一个列表
	如:[['a', 'b', 'c', 'd'], [1, 2, 3, 4]]

二、创建二维列表

  1. 直接创建
    示例:
    arr = [[1, 1, 1], [2, 2, 2], [3, 3, 3]]
    或者:
    arr1 = [1, 1, 1]
    arr2 = [2, 2, 2]
    arr3 = [3, 3, 3]
    arr = [arr1, arr2, arr3]
    如上两种方式效果一样,创建了一个3*3的列表

  2. for循环
    示例:

arr = []
for i in range(3):
    arr.append([])
    for j in range(3):
        arr[i].append(j)
print(arr)
运行结果:
[[0, 1, 2], [0, 1, 2], [0, 1, 2]]

三、查询列表

1.查询单个元素
arr[0]:列表的第一个元素
arr[0][0]:列表的第一个元素的第一个元素
在这里插入图片描述
2. 遍历列表

# 遍历列表的长度
for i in range(len(arr)):
    for j in range(len(arr[i])):
        print(arr[i][j])
# 或者如下的方式,遍历列表元素
for i in arr:
    for j in i:
        print(j)

四、zip()的用法

list(zip(arr1, arr2)): 将arr1 和arr2序号相同的元素组成一个元组,形成一个新的列表
list(zip(col)):加了符号*,可以理解为逆向

>>> arr1 = [1, 1, 1]
>>> arr2 = [2, 2, 2]
>>> arr3 = [3, 3, 3]
>>> col = list(zip(arr1, arr2))
>>> col
[(1, 2), (1, 2), (1, 2)]
>>> col1 = list(zip(arr1, arr2, arr3))
>>> col1
[(1, 2, 3), (1, 2, 3), (1, 2, 3)]
>>> list(zip(*col1))
[(1, 1, 1), (2, 2, 2), (3, 3, 3)]
>>> list(zip(*col))
[(1, 1, 1), (2, 2, 2)]

使用场景:例如,一个列表存储了多个选项的name,另一列表存储了对应的id
可以使用zip快速将name和id对应起来存放到新的list中;

>>> list_name = ['name1', 'name2', 'name3']
>>> list_id = [1, 2, 3]
>>> list_new = list(zip(list_name, list_id))
>>> list_new
[('name1', 1), ('name2', 2), ('name3', 3)]

反之,若已获得的是name和id对应起来的list,也可通过zip(*)快速拆分为单独的name和id

>>> list_new
[('name1', 1), ('name2', 2), ('name3', 3)]
>>> list_ni = list(zip(*list_new))
>>> list_ni
[('name1', 'name2', 'name3'), (1, 2, 3)]
  • 7
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值