我正在尝试编写一个 lambda 函数(对于 Python 函数式编程风格来说仍然是新手)。我有一个这样的列表:
cur_list = [b'1z1zzz\r\n', b'1z1z1zzz\r\n', b'1z1z1zzz\r\n', b'zzzz\r\n', b'1zzzz\r\n']
我想按每个列表中“1”出现的次数对列表进行排序。因此,在上面的列表中,正确的(排序的)解决方案如下所示:
cur_list = [b'zzzz\r\n', b'1zzzz\r\n', b'1z1zzz\r\n', b'1z1z1zzz\r\n', b'1z1z1zzz\r\n']
可以将哪个 lambda 函数插入到以下代码片段中,以根据给定字符串列表中“1”的出现情况进行有效排序?
cur_list.sort(key=#####what lambda function to insert here)
感谢您的回答!
最佳答案
那就是:
lambda x: x.count('1')
当然,由于您拥有的看起来像是字节字符串数组,因此您可能需要这样:
lambda x: x.count(b"1")
关于python - 如何编写 lambda 函数来计算 Python sort() 中字符串中的出现次数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38689777/