一个13列,50多万行的二维list【注意:只能是list】,我想交换其中几列的位置,在不借助pandas等包的情况下,有什么办法实现?
循环呗
话说,list里存的是数据,数据是抽象的,跟你后续如何处理,如何存数据库,如何显示并没有直接的关系,你没事闲的为什么非要在内存层面交换它们
使用for循环,并且结合python标签的特性。如有帮助,还请采纳。示例如下:
list1 = [[1, 2, 3, 4], [1, 2, 3, 4], [1, 2, 3, 4], [1, 2, 3, 4], [1, 2, 3, 4]]
for i in list1:
# 第二列,第三列互换为例
i[1], i[2] = i[2], i[1]
print(list1)
输出结果如下:
不用pandas,可以用for循环遍历50w,一行一行赋值更换
有规律的可以t通过for循环批量换,你可以决定谁和谁换,像下面这样:
for f in range(2):
lis[f], lis[f+2] = lis[f+2], lis[f]
有帮助的话采纳一下哦!
#所有行都统一换的话用for循环遍历列表,然后交换你需要换的那几列,x、y列
for i in list:
i[x], i[y] = i[y], i[x]
#特定行的话把上面list改为你需要的那几行组成的列表[20,30,50,300,2220...],然后利用list对应下标,来交换
for i in [20,30,50,300,2220...]:
list[i][x], list[i][y] = list[i][y], list[i][x]
只能说你真厉害🌝🌝
把数据先导入到excel中再操作也可行啊
numpy应该也行
拷贝到excel里面可行不