看到老王Python上的一篇有关Iambda的文章http://www.cnpythoner.com/post/140.html,其中提到一题目 - 输出a字符串出现频率最高的字母:

代码如下

1 a = "aAsmr3idd4bgs7Dlsf9eAF"

2 l = ([(x,a.count(x)) for x inset(a)])3 l.sort(key = lambda k:k[1],reverse=True)4 print l[0][0]

这里做点笔记和注释:

第一行即为一个字符串的赋值语句,该字符串较特别。

第二行,经过测试右边最外的圆括号不是必要,开始我还以为是将圆括号里的列表[(x,a.count(x)) for x in set(a)]转成元祖,其实不是,实际上列表转元祖的做法应该是aTuple = tuple(aList)。继续看,[(x,a.count(x)) for x in set(a)]是生成一个list,其中每一项(x, a.count(x))是一个有两项item的元祖,这两项中第一项是第一行定义的那个字符串里的一个字符,第二项a.count(x)则是该字符在那字符串中出现的次数。这里用到字符串的内建方法count(介绍如下)。set(a)是个有意思的用法,它将字符串a打散成所有子字符,做为元素生成一个集合set。

str.count(sub[, start[, end]])

Return the number of non-overlapping occurrences of substring sub in the range [start, end]. Optional arguments start and end are interpreted as in slice notation.

第三行,开始对l这个列表里的项目进行排序,排序依据的key是 lambda k:k[1],这里是将key设置为l这个列表中每一项(类型是元祖)的第二项,相应的sample代码还有:

1 student =[2 ('John', 'm', 15),3 ('Jane', 'f', 12),4 ('Dave', 'm', 10),5 ]6

7 student.sort(key=lambda student: student[2])8

9 print student

最后加了个reverse=True是因为默认排序是从小到大,所以加了这语句后将排序改成从大到小。

第四行,输出已排序后的l列表中的第一项(类型是元祖)的第一项,也即那字符串中出现最高的字符,的出现次数。

python输出给定字符串中字母a出现的次数_[Python] 输出a字符串出现频率最高的字母,用到了list中的排序和Iambda...相关推荐

  1. DS之信息挖掘:利用pandas库统计某一列col中各个值出现的次数(降序输出)

    DS之信息挖掘:利用pandas库统计某一列col中各个值出现的次数(降序输出) 目录 利用pandas库统计某一列col中各个值出现的次数(降序输出) 输出结果 实现代码 利用pandas库统计某一 ...

  2. python统计表中单词及其出现的次数 字典形式输出_统计字符串中字母出现的次数,字典形式输出(python)...

    a = "aAsmr3idd4bgs7Dlsf9eAF" 请将a字符串的数字取出,并输出成一个新的字符串. 请统计a字符串出现的每个字母的出现次数(忽略大小写,a与A是同一个字母) ...

  3. python统计字符串中某个字符出现的次数_【面试题总结】1、统计字符串中某个字符出现的次数(2-Python实现)...

    1.可以使用Python的字典实现,对于一个特定的字符串,使用for循环遍历其中的字符,并保存成字典形式.字典的key为字符,value为字符在整个字符串中出现的次数. 2.拓展:如果题目为比较两个字 ...

  4. python中from import*的*什么意思_[Python]Python中的import和from import

    在python用import或者from...import来导入相应的模块. 模块其实就是一些函数和类的集合文件,它能实现一些相应的功能,当我们需要使用这些功能的时候,直接把相应的模块导入到我们的程序 ...

  5. 3层b+树索引访问磁盘次数_从B+树到LSM树,及LSM树在HBase中的应用

    点击上方蓝色字体,选择"设为星标" 回复"资源"获取更多资源 大数据技术与架构点击右侧关注,大数据开发领域最强公众号! 暴走大数据点击右侧关注,暴走大数据! 前 ...

  6. python中format函数用法简书_增强的格式化字符串format函数

    自python2.6开始,新增了一种格式化字符串的函数str.format(),可谓威力十足.那么,他跟之前的%型格式化字符串相比,有什么优越的存在呢?让我们来揭开它羞答答的面纱. 它通过{}和:来代 ...

  7. python3程序运行中会跳过注释行_[python] 去除代码源文件中单行注释

    """ 利用正则表达式去除文件中的单行注释,支持多行稍加更改即可 """ import os import re pattern_c = { ...

  8. java统计一个字符串中每个字符出现的次数_剑指offer算法题054:字符流中第一个不重复的字符...

    推荐阅读:宇宙条的工作总结:一年前还在面试找工作,一年后在面试找工作的学弟学妹们:第一次当面试官的经历分享小编在求职找找工作期间剑指offer上的算法题刷了很多遍,并且每道题小编当时都总结了一种最适合 ...

  9. java统计字符串中每个字符出现的次数_统计字符串出现的次数

    手机边亲爱的大家好! 今天我要给大家分享一个示例:统计出某个字符串在某表某字段中出现的次数. 大家先来看一下结果效果图: 先来讲一下原理,其实就是循环数据库中的所有表,然后找模糊查找,找到了就记录表名 ...

最新文章

  1. 在php中插入数据显示在html_PHP中的浮点型数据计算之程序员脱发问题
  2. 每日程序C语言47-找到年龄最大的人并输出
  3. Java操作excel工具easyExcel
  4. 关于调用 Angular 属性指令 attribute Directive 是否需要带中括号的问题
  5. TCP/IP数据包结构分解
  6. [蓝桥杯][算法提高VIP]因式分解
  7. Bootstrap 模态对话框
  8. 配置tomcat用户
  9. 电压、电流 —— 常用设备的电压电流
  10. 安卓上传文件时修改文件名称_使用mmv命令批量修改文件名称
  11. 微信收款没有提示通知消息,怎么打开?解决方案
  12. php模板地图修改,让你一个地图拥有全部资源的修改方法
  13. Python基本语法一
  14. 安防市场视频监控比重大 并有新商机
  15. 视频名词浅析——HDR
  16. linux取消上一个命令,Linux简介及最常用命令(简单易学,但能解决95%以上的问题)...
  17. C语言路漫漫,其修远兮
  18. Android studio中使用NumCpp最新开源库
  19. Quartus Prime 与 Modelsim 调试 及do文件使用
  20. 大唐波斯将军 机器人_波斯帝国被阿拉伯所灭,末代王子三次求助大唐,为何唐朝没有出兵...

热门文章

  1. [cocos2d-x] -- Cocos2d-x简介
  2. [mini-css-extract-plugin] warning Conflicting order
  3. nexus私库中的releases与snapshots区分
  4. Windows XP 安装 MTP 驱动
  5. 洪荒:不周山上的绝世大能(一)
  6. 小米二手机价格多少钱
  7. java页面正文提取_Crux 是一个 HTML 正文内容提取库,并确定一篇文章的关键内容...
  8. 微信数据包解析 php,微信交互数据包分析 - 新手入门及其它(软件) - 恩山无线论坛 - Powered by Discuz!...
  9. 陈奕迅《歌神HQCD》[WAV分轨]
  10. 北大前沿交叉学院数据科学计算机,北京大学数据科学(统计学)考研经验-北大前沿交叉学科研究院考研...