python - 更改列表python中多个项目的值
问题描述
我有一个嵌套列表:
Table=[['','','','',''],
['','','','',''],
['','','','',''],
['','','','',''],
['','','','',''],
['','','','','']]
我已经随机放置了一些值Table
,现在我想在这些值的 2D 邻居中放置其他东西。例如:
Table=[['','','','',''],
['','','','',''],
['','','','',''],
['','','value','',''],
['','','','',''],
['','','','','']]
然后我想补充:
Table=[['','','','',''],
['','','','',''],
['','','1','',''],
['','1','value','1',''],
['','','1','',''],
['','','','','']]
下面是我所有的代码,我不知道为什么,但它会以任何其他格式接受它对不起:/
def add_nukes():
pos=j.index('nuke')
if "nuke" not in j[0]:j[pos+1]='1'
if "nuke" not in j[-1]:
j[pos-1] = "1"
board[pos][i-1]="1"
board[i+1][pos]="1"
import random
size=150
if size%2==1:
size+=1
board = [[" "]*size for i in range(size)]
bombs = 25
all_cells = ["nuke"] * bombs + [" "] * (size - bombs)
random.shuffle(all_cells)
board = [all_cells[i:i+10] for i in range(0, size, 10)]
count=0
for j in board:
for i in range(len(j)):
count+=1
if "nuke" in j[i]:
add_nukes()
elif "nuke" in j[i]:
add_nukes()
for item in board:
print item
解决方案
中的任何值Table
都由其x
和y
坐标唯一标识,即第 2 列(x == 1
因为 0 索引)和第 3 行 ( y == 2
) 中的元素是Table[y][x] == Table[2][1]
。
任何单元格的四个直接邻居是一个远离或一个远离A
的单元格。如果是,那么邻居是。x
A
y
A
A
Table[y][x]
[Table[y - 1][x], Table[y + 1][x], Table[y, x - 1], Table[y, x + 1]]
推荐阅读
- docker - Traefik 中的 HTTPS 和子域
- java - 在视图绑定中返回 findViewById()
- asp.net-mvc - 如何在 ASP.NET MVC 中添加按钮并从 C# 代码链接单击事件
- php - 我们如何更改 ORO Commerce 上的创建订单按钮链接?
- flutter - 在任何类之外声明变量:为什么可能
- python - 如何用张量做某种 np.vstack 或 np.hstack
- pytorch - Pytorch 矩阵元素智能乘法
- html - 导航栏下拉菜单无法正常工作
- python - 有没有办法将用户输入保存到一个永久列表中,即使在 python 程序关闭后也会保存该列表
- python - 将数据从 python 页面发送到另一个页面