我有一个这样的列表:
alkaline_earth_values = [['beryllium', 4], ['magnesium', 12],['calcium', 20],
['strontium', 38], ['barium', 56], ['radium', 88]]
Run Code Online (Sandbox Code Playgroud)
如果我只是使用该max(list)方法,它将返回答案'strontium',如果我试图找到最大名称,这将是正确的,但是我试图返回其整数最高的元素.
我有一个元组列表,对应于某些点的 ( x,y)坐标(可以是 8 到数百个点):
mylist = [(x0,y0), (x1,y1), ..., (xn,yn)]
Run Code Online (Sandbox Code Playgroud)
我想获得x和y坐标的最小值和最大值(所有x 的最小值,无论它们,等等)。就是优化比例,把点画成矩形区域。
所以我有两个解决方案:
第一种解决方案:创建两个带有坐标[foo[0] for foo in mylist]且相同的列表foo[1]。然后我可以轻松获得最小值和最大值。但是我必须创建列表(为了不进行两次理解,一次为一分钟,一次为最大值)。
第二种解决方案:对列表进行两次排序,一次根据第一个坐标,然后到第二个坐标,每次获取第一个和最后一个值。内存占用少,但需要排序。
最好的解决方案是什么?
我有这个文件列表:
1.jpg, 2.jpg, ..., 10.jpg, ...
Run Code Online (Sandbox Code Playgroud)
如果我做一个python os.listdir(".")我列出了所有文件,但按字母顺序排列如下:
[1.jpg, 10.jpg, 11.jpg, ..., 2.jpg, 20.jpg....]
Run Code Online (Sandbox Code Playgroud)
但我希望它们按数值排序
[1.jpg, 2.jpg ,...10 ,11 ,12... ]
Run Code Online (Sandbox Code Playgroud)
如何重新排序列表以完成此操作?
TX