鱼C论坛

 找回密码
 立即注册
查看: 660|回复: 4

[技术交流] 零基础入门学习PYTHON作业第19章动手1

[复制链接]
发表于 2018-7-19 14:38:40 | 显示全部楼层 |阅读模式

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

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

x
字符串函数isalpha()中汉字也算作字母,用isalpha()来统计字母数量不妥
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2018-7-19 14:39:21 | 显示全部楼层
根据题目要求,汉字应算作其他字符,而按照示例代码则会被算作字母。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-7-19 14:40:12 | 显示全部楼层
#exercise 1
#isdigit()函数 汉字算True

def Cal(*strings):
    Alpha=0
    Number=0
    Space=0
    Others=0
    A='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
   
    for i in range(len(strings)):
        for j in strings[i]:
            if j in A:Alpha+=1
            elif j.isdigit():Number+=1
            elif j.isspace():Space+=1
            else: Others+=1
   
    return [Alpha, Number, Space, Others]

#附上自己的代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-7-19 15:51:08 | 显示全部楼层
isalpha,isdigit和isspace都考虑的比较全,范围更大些。小甲鱼的题目对字符串的考量是不含中文的。
一般而言小练习是不过多考虑容错问题的。
比如使用isspace,也会有不是普通空格的情况。
  1. >>> ' '.isspace()
  2. True
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-7-24 12:18:24 | 显示全部楼层
冬雪雪冬 发表于 2018-7-19 15:51
isalpha,isdigit和isspace都考虑的比较全,范围更大些。小甲鱼的题目对字符串的考量是不含中文的。
一般 ...

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-19 07:23

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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