Tat*_*nho 3 python arrays concatenation
我正在尝试在 Python 中向二维数组添加额外的列,但我陷入困境。我有一个如下所示的二维数组:
['000', '101']
['001', '010']
['010', '000']
['011', '100']
Run Code Online (Sandbox Code Playgroud)
然后我交换第二列中的 2 个元素,得到如下内容:
['000', '101']
['001', '000']
['010', '010']
['011', '100']
Run Code Online (Sandbox Code Playgroud)
我想现在将最后一列添加为第三列,如下所示:
['000', '101', '101']
['001', '010', '000']
['010', '000', '010']
['011', '100', '100']
Run Code Online (Sandbox Code Playgroud)
但我只设法得到这个:
['000', '101']
['001', '000']
['010', '010']
['011', '100']
101
000
010
100
Run Code Online (Sandbox Code Playgroud)
我正在添加这样的列:
col = column(data,1)
data_res += col
Run Code Online (Sandbox Code Playgroud)
我正在创建一个像这样的数组:
with open('data.txt', 'r') as f:
for line in f:
line_el = line.split()
data.append(line_el)
Run Code Online (Sandbox Code Playgroud)
我这样交换:
def swap(matrix, id_l, id_r):
matrix[id_l][1], matrix[id_r][1] = matrix[id_r][1],matrix[id_l][1]
return matrix
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
由于您将 2D 列表编写为列表列表(行主顺序),因此添加列意味着向每行添加一个条目。
看来您已经创建了一些数据,如下所示:
# Create a 2D list
data = [['000', '101'],['001', '010'],['010', '000'],['011', '100']]
Run Code Online (Sandbox Code Playgroud)
所以现在您可以添加一个与最后一列相同的新列,如下所示:
# Loop through all the rows
for row in data:
lastColumn = row[-1]
# Now add the new column to the current row
row.append(lastColumn)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7727 次 |
| 最近记录: |