python - 如何更改数组中的元素?

标签 python python-3.x

这是我的代码:

l = [[1,'a'],[2,'b'],[3,'c']]
n = []
for i in range(len(l)):
  n.append(l[i])
print(n)

我试图选择数组中的每个元素以仅反转数字顺序并将其放入新数组中。

所以我试图让它看起来像这样:

[[3,'a'],[2,'b'],[1,'c']]

最佳答案

您可以在列表理解中使用 zip 将反转列表与列表本身配对,如下所示:

[[a, b] for (a, _), (_, b) in zip(reversed(l), l)]

这将返回:

[[3, 'a'], [2, 'b'], [1, 'c']]

或者您可以通过交换项目来就地修改列表:

for i in range(len(l) // 2):
    l[i][0], l[len(l) - i - 1][0] = l[len(l) - i - 1][0], l[i][0]

l 将变为:

[[3, 'a'], [2, 'b'], [1, 'c']]

关于python - 如何更改数组中的元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53163205/

相关文章:

python - 获取列表中相邻元素的所有组合

python - cfn-init 退出并出现错误 - DistributionNotFound : pystache>=0. 4.0

python - 如何将列表应用于 Pandas 组

python - 为什么 p[ :] designed to work differently in these two situations?

python - 如何读取API输出的多个词典列表?

Python - 在 PyQt4 应用程序中动态切换翻译

定义输入时 LInux 终端中的 Python 名称错误

python - 多级数据框到破折号表

python-3.x - 导入 matplotlib 出现问题

python - 如何在使用按位运算添加两个整数时添加无限循环的代码修复