嗨,我是python的新手,正在尝试做一些数据处理中的小任务。请注意,这不是家庭作业,我知道这个论坛。我只是不知道如何访问元素内的数字,因此我没有任何代码开头:
我有一个清单
numbers = [865, 1169, 1208, 1243, 329]
-如何编写一个程序,以降序显示列表编号中的值,并按其最后一位排序
我想要的输出:
Sorted by last digit:
[1169, 1208, 865, 1243, 290]
-如何以降序显示列表编号中的值 顺序按它们的奇数位数之和排序
我想要的输出:
Sorted by sum of odd digits:
[1169, 290, 865, 1243, 1208]
答案 0 :(得分:0)
最简单的方法是使用列表对象的.sort()
方法对其进行 或内置的sorted()
来返回已排序的副本。两者都接受一个key
关键字参数,该参数可以是一个函数。我的解决方案是提供一个计算您要求的功能。
最后一位:
sorted(numbers, key=lambda x: x % 10))
# reversed:
sorted(numbers, key=lambda x: x % 10, reverse=True)
由奇数之和:
sorted(numbers, key=lambda x: sum([int(i) for i in str(x) if int(i) % 2 == 1]))