Python中文
首页
教程
问答
标签
搜索
登录
注册
如何对字母数字列表进行自定义排序?
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我有以下清单</p> <pre><code>l = ['SRATT', 'SRATW', 'CRAT', 'CRA0', 'SRBTT', 'SRBTW', 'SRAT0', 'SRBT0'] </code></pre> <p>我想按字母顺序排序,添加了一个规则,即末尾包含数字的字符串(实际上总是0)必须在最后一个完全按字母顺序排列的字符串之后(最后一个字母最多为W)。在</p> <p>我怎么能做到呢?(如果可能,使用一个简单的方法,如<code>sorted</code>)</p> <hr/> <p>对于这个示例列表,期望的结果是</p> ^{pr2}$ <p>下面这些不起作用</p> <pre><code>sorted(l, key=lambda x: x[-1].isdigit()) </code></pre> <p>因为它把包含最后一个数字的字符串放在末尾,就像这样</p> <pre><code>['SRATT', 'SRATW', 'CRAT', 'SRBTT', 'SRBTW', 'CRA0', 'SRAT0', 'SRBT0'] </code></pre>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>您必须保留字符串的字母标准(减去最后一个元素),并引入另一个条件:以数字结尾。在</p> <pre><code>sorted(l, key=lambda x: (x[:-1] ,x[-1].isdigit())) </code></pre> <p>一种更复杂但更强大的方法:</p> ^{pr2}$ <p>(修复了Stefan指出的由1个或0个大小的元素组成的角落大小写,或者<code>['AB', 'AA']</code>大小写)</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
如何添加虚拟方法
6 回答
如何添加表示整数的擦边字符串?
8 回答
如何添加要在Bokeh中使用的新font.ttf文件?
7 回答
如何添加要显示的矩阵XY轴编号和XY轴
9 回答
如何添加计数?
7 回答
如何添加计数器函数?
9 回答
如何添加计数器列来计算数据帧中另一列中的特定值?
8 回答
如何添加计数器来跟踪while循环中的月份和年份?
2 回答
如何添加计数并删除countplot的顶部和右侧脊椎?
8 回答
如何添加计时器wx.应用程序更新窗口对象的主循环?
5 回答
如何添加评论到帖子?PostDetailVew,Django 2.1.5
3 回答
如何添加评论拉梅尔亚姆
2 回答
如何添加诸如矩阵Python/Pandas之类的数据帧?
4 回答
如何添加谷歌地点自动完成到Flask?
8 回答
如何添加超时、python discord bot
7 回答
如何添加超过1dp的检查
4 回答
如何添加距离方法
7 回答
如何添加跟随游戏的敌人精灵
2 回答
如何添加路径以便python可以找到程序?
6 回答
如何添加身份验证/安全性以使用happybase访问HBase?
2 回答