python - 重新排序列表列表中的列表元素
问题描述
我有一个由字符串和整数元素组成的列表列表,例如
a = [['i','j',1,2,3...n], ['k','l',4,5,6...n], ['m','n',7,8,9...n]]
我想重新排序每个子列表中的字符串元素,以便a[l][1]
代替,a[l][0]
反之亦然,所以我最终得到:
a = [['j','i',1,2,3...n], ['l','k',4,5,6...n], ['n','m',7,8,9...n]]
我尝试遍历每个子列表并使用order
变量来更改整数位置,但它似乎并没有改变每个列表中的顺序:
order = [1,0,2,3,4...n]
for l in reversed(range(len(a))):
[a[l][j] for j in order]
我究竟做错了什么?
解决方案
[a[l][j] for j in order]
这只是一个被评估然后丢弃的表达式。
如果要更改a
,则需要分配给它:
a[l] = [a[l][j] for j in order]
推荐阅读
- sql - SQL查询,具有相同类型(名称)的条目总和
- tensorflow - 为什么我的 tensorflow 事件文件是空的?
- mxnet - 提高 Resnet 的训练准确性
- r - 计算 Donchian Channel 技术指标的更改日期
- ios - 警告 - 未知呼叫:react-native iOS 应用程序中的“relay:check”
- cordova - Cordova 需要 ios-deploy 1.9.2 或更高版本,你有 1.9.0 版本,但我安装了 1.9.4
- reactjs - 错误:reducer 执行时无法调用 Redux 调度?
- recursion - Prolog中的镜像二叉树
- admob - 我是否需要验证我的 admob 帐户,因为我已经在使用经过验证的 adsense 帐户?
- c++ - 为什么我可以使用 for 循环而不是单独访问 C++ 映射元素?