我有一个列表a = ['L','N','D'].我想颠倒a中元素的顺序并得到b = ['D','N','L'].我试过这个:
a = ['L', 'N', 'D']
b = sorted(a, reverse=True)
Run Code Online (Sandbox Code Playgroud)
但输出是
b= ['N', 'L', 'D']
Run Code Online (Sandbox Code Playgroud)
我在哪里弄错了?
blo*_*tfc 12
如果你想使用sorted(),你可以指定索引作为排序的键:
b = sorted(a, key=a.index, reverse=True)
Run Code Online (Sandbox Code Playgroud)
您的错误是使用sorted,它按元素的顺序重新排列列表,并忽略元素的位置.而是使用
b = a[::-1]
Run Code Online (Sandbox Code Playgroud)
a以相反的顺序遍历列表.你也可以使用
b = list(reversed(a))
Run Code Online (Sandbox Code Playgroud)
虽然第一个版本更快.
| 归档时间: |
|
| 查看次数: |
18865 次 |
| 最近记录: |