当前位置: 首页 > wzjs >正文

做钓鱼网站教程视频教程厦门企业网站建设补贴

做钓鱼网站教程视频教程,厦门企业网站建设补贴,深圳有名的建筑公司,百度关键词收费标准包括: 二维列表的定义与初始化遍历、索引、切片增删改查推导式操作注意事项与 NumPy 的对比(性能 语法) 一、二维列表简介与定义 定义方式 1:直接嵌套列表 matrix [[1, 2, 3],[4, 5, 6],[7, 8, 9] ]定义方式 2:列…

包括:

  • 二维列表的定义与初始化
  • 遍历、索引、切片
  • 增删改查
  • 推导式操作
  • 注意事项
  • 与 NumPy 的对比(性能 + 语法)

一、二维列表简介与定义

定义方式 1:直接嵌套列表

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

定义方式 2:列表推导式初始化

# 创建一个 3x4 的全零矩阵
rows, cols = 3, 4
matrix = [[0 for _ in range(cols)] for _ in range(rows)]

二、二维列表的访问与遍历

1. 单个元素访问

matrix[0][1]  # 访问第 0 行第 1 列元素(值为 2)

2. 遍历方式

行优先遍历:
for row in matrix:for item in row:print(item, end=' ')
按索引遍历:
for i in range(len(matrix)):for j in range(len(matrix[0])):print(f"matrix[{i}][{j}] = {matrix[i][j]}")

三、修改、添加、删除操作

1. 修改元素

matrix[1][2] = 99

2. 增加一行或一列

# 添加一行
matrix.append([10, 11, 12])# 添加一列(给每行增加一个元素)
for row in matrix:row.append(0)

3. 删除行或列

# 删除第 2 行
del matrix[2]# 删除第 1 列(遍历每一行)
for row in matrix:del row[1]

四、二维列表推导式

示例:创建 5x5 的乘法表

table = [[i * j for j in range(1, 6)] for i in range(1, 6)]

五、常见二维操作函数

1. 转置矩阵

transposed = [list(col) for col in zip(*matrix)]

2. 按列遍历

for col in zip(*matrix):print(col)

六、注意事项与误区

误区:初始化二维列表时不要使用 *

wrong = [[0]*4]*3
wrong[0][0] = 1
print(wrong)
# [[1, 0, 0, 0], [1, 0, 0, 0], [1, 0, 0, 0]] ❌ 所有行是同一引用# 正确做法:
correct = [[0 for _ in range(4)] for _ in range(3)]

七、二维列表与 NumPy 的对比

操作Python 列表NumPy 数组
定义[[1,2],[3,4]]np.array([[1,2],[3,4]])
取值a[i][j]a[i, j] ✅更快
转置zip(*a)a.T
切片复杂简洁如 a[:, 1]
运算不支持矩阵运算支持如 a + b, a @ b
性能较慢快得多(C实现)

NumPy 示例:

import numpy as npa = np.array([[1, 2], [3, 4]])
b = a.T           # 转置
c = a + b         # 矩阵加法
d = a @ b         # 矩阵乘法
print(c)

八、应用场景小例子

1. 图像处理:灰度图矩阵表示

image = [[128, 130, 135], [140, 142, 145], [150, 155, 160]]
# 调整亮度 +10
brightened = [[pixel + 10 for pixel in row] for row in image]

2. BFS/DFS 中的地图矩阵

# 地图 0 表示可走,1 表示障碍
grid = [[0, 1, 0],[0, 0, 0],[1, 0, 1]
]

九、小结表

操作示例
定义二维列表[[0]*cols for _ in range(rows)]
添加行matrix.append([...])
添加列for row in matrix: row.append(x)
删除行del matrix[i]
删除列for row in matrix: del row[j]
推导式构建[[i*j for j in ...] for i in ...]
转置[list(col) for col in zip(*m)]
http://www.dtcms.com/wzjs/565603.html

相关文章:

  • 找人做自建房图纸去哪个网站成都网站开发培训多少钱
  • 艾迪网络专业的网站建设公司延安网站建设报价
  • 网站数据接口怎么做投稿的网站
  • 网站建设win2012wordpress 订单插件
  • 没有域名能做网站吗做微网站平台
  • 东莞企业建站申请多少钱百度经验首页官网
  • 模板网站搭建站内优化seo
  • 百度免费建个人网站seo值怎么提高
  • 连云港网站推广怎么在国外做网站
  • 企业网站建设方案策划wordpress 调整字体
  • 微网站模板怎么做php网站打开慢
  • ipfs做网站网页区设计网站诊断
  • 南宁百度网站公司怎么上传自己的做网站
  • wordpress实用代码seo主要优化哪些
  • 网站换域名 蜘蛛不来南昌企业做网站
  • 做研学的网站网站建设方案优化
  • 肇庆网站设计wordpress termmeta
  • 商城网站建设定制工信部备案网站查询
  • 自己开的网站 可以做代销吗商丘做网站汉狮网络
  • 太原制作手机网站2021电商行业发展现状及趋势
  • 中国建设资格注册中心网站如何为网站建设内容
  • 网站怎么做百度推广做网站买域名怎么弄
  • 响应式企业网站建设网站收索流量
  • 哪个网站做攻略比较好wordpress分类页面添加幻灯片
  • 公司网站设计定制哪个网站可以做印章图案
  • 营商环境建设监督局网站wordpress站内短信
  • 佛山网站推广怎么做青羊网站建设
  • 爱站网自媒体数据织梦如何一个后台做两个网站
  • 黑龙江俄语网站制作制作深圳网站建设
  • 网站常用插件辽宁自助网站建设公司