鱼C论坛

 找回密码
 立即注册
查看: 2228|回复: 7

[已解决]小白求助以下python算法实现代码

[复制链接]
发表于 2021-7-15 21:28:07 | 显示全部楼层 |阅读模式

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

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

x
    小白求助~~~~
    用一个算法实现从一个长字符串中找出包含多少个不同的字母
最佳答案
2021-7-15 21:28:08

直接用字符串方法判断是否为字母后加入列表,用 set 集合合并同元素即可:
string = 'asx12zfex34s'
result = len(set([i for i in string if i.isalpha()]))
print(result)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-7-15 21:36:23 | 显示全部楼层
本帖最后由 梦回连营 于 2021-7-15 21:37 编辑

n = len(set(astr))
astr是你的字符串
set是找出所有不同的字母
len求个数
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-7-15 21:37:53 | 显示全部楼层

这个只能看有多少个字符,数字也会被算在里面
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-7-15 21:39:23 | 显示全部楼层
ncx0331 发表于 2021-7-15 21:37
这个只能看有多少个字符,数字也会被算在里面

那你说清楚啊,大小写算个算,要不要找
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2021-7-15 21:40:59 | 显示全部楼层
梦回连营 发表于 2021-7-15 21:36
n = len(set(astr))
astr是你的字符串
set是找出所有不同的字母

大神请问有具体的代码不
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2021-7-15 21:42:10 | 显示全部楼层
ncx0331 发表于 2021-7-15 21:37
这个只能看有多少个字符,数字也会被算在里面

大神请问有具体的代码不
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-7-15 21:58:36 | 显示全部楼层
本帖最后由 梦回连营 于 2021-7-15 22:00 编辑
weiyideid823 发表于 2021-7-15 21:42
大神请问有具体的代码不

astr = 'ABCabc123'
astr_ascii = [ord(i) for i in astr]
n = sum([int((i>=65 and i<=90) or (i>=91 and i<=122)) for i in astr_ascii])

只区分了字母与非字母, 并且区分字母大小写
这是利用字符的ascii编码实现的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-7-15 21:28:08 | 显示全部楼层    本楼为最佳答案   

直接用字符串方法判断是否为字母后加入列表,用 set 集合合并同元素即可:
string = 'asx12zfex34s'
result = len(set([i for i in string if i.isalpha()]))
print(result)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-1-14 02:32

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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