【问题标题】:How to add elements to a matrix?如何将元素添加到矩阵中?
【发布时间】:2020-11-09 02:47:57
【问题描述】:

我实际上正在学习 Python,我想制作一个矩阵 (4x5) 并替换为坐标。 这是矩阵的代码:

grid = [["+" for i in range(4)] for j in range(5)]

for k in grid:
    print(k)
   0    1    2    3
0['+', '+', '+', '+']
1['+', '+', '+', '+']
2['+', '+', '+', '+']
3['+', '+', '+', '+']
4['+', '+', '+', '+']

例如:我想在 (0,1) 和 (1,1) 中加上“-”。它应该是这样的:

   0    1    2    3
0['+', '+', '+', '+']
1['-', '-', '+', '+']
2['+', '+', '+', '+']
3['+', '+', '+', '+']
4['+', '+', '+', '+']

我真的尝试过,但我不知道如何添加元素并将其保存在矩阵中:/

谢谢,希望他们能理解我的问题。

【问题讨论】:

  • 如果它只是一个列表,你能解决问题吗,比如说你有['+', '+', '+', '+'],你想把它改成['+', '-', '+', '+']
  • 要让程序正确,你的思维必须精确;它有助于准确地使用您的语言。例如,很明显,您不想将元​​素“添加”到矩阵中,因为矩阵之前和之后的大小应该相同。相反,您想替换它们。

标签: python arrays python-3.x list


【解决方案1】:

矩阵只是列表的列表。您可以使用列表索引更新坐标。

试试这个代码:

grid = [["+" for i in range(4)] for j in range(5)]

for k in grid:
    print(k)

print()

grid[1][0] = '-'
grid[1][1] = '-'

for k in grid:
    print(k)

输出

['+', '+', '+', '+']
['+', '+', '+', '+']
['+', '+', '+', '+']
['+', '+', '+', '+']
['+', '+', '+', '+']

['+', '+', '+', '+']
['-', '-', '+', '+']
['+', '+', '+', '+']
['+', '+', '+', '+']
['+', '+', '+', '+']

【讨论】:

    【解决方案2】:
    
    def insert(grid,
               what  = None,
               coord = None):
        
        r,c = coord
        grid[r][c] = what
        
    
    grid = [["+" for i in range(4)] for j in range(5)]
    insert(grid, what = "-", coord = (1,1))
    
    for k in grid:
        print(k)
    
    

    【讨论】:

      猜你喜欢
      • 2014-10-14
      • 1970-01-01
      • 1970-01-01
      • 2019-06-05
      • 2023-01-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多