鱼C论坛

 找回密码
 立即注册
查看: 2648|回复: 6

[已解决]7-4 统计字符串列表中每个字母出现的次数

[复制链接]
发表于 2022-11-12 19:56:49 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 光头小淘七 于 2022-11-12 20:04 编辑

真的搞不懂啊
最佳答案
2022-11-12 20:13:53
本帖最后由 jackz007 于 2022-11-12 20:18 编辑
  1. d = eval(input())
  2. s = '' . join(d)
  3. for c in set(s) : print(c , ',' , s . count(c))
复制代码

        运行实况:
  1. D:\[00.Exerciese.2022]\Python>python x.py
  2. ['abcddswefgrehasd' , 'dfjgiehjgi' , 'nxvsghdytg']
  3. y , 1
  4. c , 1
  5. g , 5
  6. d , 5
  7. t , 1
  8. a , 2
  9. w , 1
  10. e , 3
  11. f , 2
  12. v , 1
  13. r , 1
  14. i , 2
  15. x , 1
  16. b , 1
  17. s , 3
  18. n , 1
  19. j , 2
  20. h , 3

  21. D:\[00.Exerciese.2022]\Python>
复制代码

这之后就不知道怎么搞了

这之后就不知道怎么搞了
微信图片_20221112195602.jpg
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-11-12 20:13:53 | 显示全部楼层    本楼为最佳答案   
本帖最后由 jackz007 于 2022-11-12 20:18 编辑
  1. d = eval(input())
  2. s = '' . join(d)
  3. for c in set(s) : print(c , ',' , s . count(c))
复制代码

        运行实况:
  1. D:\[00.Exerciese.2022]\Python>python x.py
  2. ['abcddswefgrehasd' , 'dfjgiehjgi' , 'nxvsghdytg']
  3. y , 1
  4. c , 1
  5. g , 5
  6. d , 5
  7. t , 1
  8. a , 2
  9. w , 1
  10. e , 3
  11. f , 2
  12. v , 1
  13. r , 1
  14. i , 2
  15. x , 1
  16. b , 1
  17. s , 3
  18. n , 1
  19. j , 2
  20. h , 3

  21. D:\[00.Exerciese.2022]\Python>
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-11-12 20:22:11 | 显示全部楼层

非常感谢但是能解释一下吗,并且他要求从a排序到z
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-11-12 20:36:31 | 显示全部楼层
本帖最后由 jackz007 于 2022-11-12 20:48 编辑
光头小淘七 发表于 2022-11-12 20:22
非常感谢但是能解释一下吗,并且他要求从a排序到z

  1. d = eval(input())
  2. s = '' . join(d)
  3. for c in sorted(set(s)) : print(c , ',' , s . count(c))
复制代码

     ok 这个就是排序的结果了,你可以试试。
     第 1 行得通过 eval() 到列表 d
  1. d = eval(input())
复制代码

     如果键入 ['abcddswefgrehasd' , 'dfjgiehjgi' , 'nxvsghdytg'],那么,列表 d 的内容就是 ['abcddswefgrehasd' , 'dfjgiehjgi' , 'nxvsghdytg']
     第 2 行把 d 内部的所有字符串拼接成一个字符串
  1. s = '' . join(d)
复制代码

     如果 d = ['abcddswefgrehasd' , 'dfjgiehjgi' , 'nxvsghdytg'],则 s = 'abcddswefgrehasd' + 'dfjgiehjgi' + 'nxvsghdytg' = 'abcddswefgrehasddfjgiehjginxvsghdytg'
     第 3 行稍微有一点绕先看看 set(s),把字符串 s 转换成集合,我们知道,集合元素具有唯一性,set(s) 就会是字串 s 中所有字符的集合。例如,如果 s = 'aaabbbbccccdd',那么,set(s) = {'a' , 'b' , 'c' , 'd'}。
     set(s) 中的元素顺序不可控,为了保证按字母顺序输出,使用 BIF sorted(set(s)) 以确保按字母顺序枚举 set(s) 中的每一个元素。后面的 for c in sorted(set(s)) : print(c , ',' , s . count(c))
  1. for c in sorted(set(s)) : print(c , ',' , s . count(c))
复制代码

     自然就是打印出现在字符串中每一个字符的出现次数。
     
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-11-12 20:41:57 | 显示全部楼层

谢谢大佬!!!!

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-11-12 20:50:05 | 显示全部楼层

         我更新了说明,有什么问题请继续提问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-11-12 21:10:14 | 显示全部楼层
来学习学习
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-6-2 15:07

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表