我试图解决字符串列表的排序问题。你知道吗
所有字符串都以字母数字标识符开头,字母数字标识符之后的字符串将由单词或整数组成。你知道吗
输出列表需要按照以下规则组织:
示例
list = ['a1 9 2 3 1', 'g1 act car', 'zo4 4 7', 'ab1 off key dog', 'a8 act zoo']
reordered_list = [ 'g1 act car', 'a8 act zoo', 'ab1 off key dog', 'a1 9 2 3 1', 'zo4 4 7']
我试图使用lambda函数按第二个值对字符串进行拆分,但是输出是None
list.sort(key = lambda x: x.split()[1])
可以将
sorted
函数与键函数一起使用,键函数根据最后一个字符是否是数字(因为它可能表示是否是带整数的字符串)返回1或2个元组,通过给单词字符串的元组的第一项赋予较小的数字,将单词字符串优先于整数字符串:这将返回:
相关问题 更多 >
编程相关推荐