鱼C论坛

 找回密码
 立即注册
查看: 3586|回复: 5

[已解决]从零开始学python 19 课后动动手最后一题

[复制链接]
发表于 2020-3-1 20:28:05 | 显示全部楼层 |阅读模式

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

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

x
题目是编写一个函数,分别统计出传入字符串参数(可能不只一个参数)的英文字母、空格、数字和其它字符的个数。
我的代码是
def tjzf(cont):
    alph = 'abcdefghigklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
    num = '1234567890'
    space = ' '
    num_ = 0
    alph_ = 0
    space_ = 0
    other = 0
    len_ = len(cont)
    for i in range(len_):
        if cont[i] in alph:
            alph_ += 1
        elif cont[i] in num:
            num_ += 1
        elif cont[i] in space:
            space_ += 1
    other = len_-alph_-num_-space_
    print('该字符串共有:英文字母%d个,数字%d个,空格%d个,其他字符%d个'%(alph_,num_,space_,other))
    print(len_)
cont = input('请输入您的字符串')
tjzf(cont)

我输入 huhduihud jijiojid 00 )))jhuihuh    jijoj
运行结果是
该字符串共有:英文字母22个,数字2个,空格7个,其他字符10个
41

可是我输入的这个字符串有字母29个,其他字符只有3个,求大佬帮忙看看问题,我已经想了很久没找到问题
最佳答案
2020-3-1 20:33:31
字母表那里有问题
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2020-3-1 20:33:31 | 显示全部楼层    本楼为最佳答案   
字母表那里有问题
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2020-3-1 20:34:14 | 显示全部楼层
代码帮你改好了:

  1. def tjzf(cont):
  2.     alph = 'qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM'
  3.     num = '1234567890'
  4.     space = ' '
  5.     num_ = 0
  6.     alph_ = 0
  7.     space_ = 0
  8.     other = 0
  9.     len_ = len(cont)
  10.     for i in range(len_):
  11.         if cont[i] in alph:
  12.             alph_ += 1
  13.         elif cont[i] in num:
  14.             num_ += 1
  15.         elif cont[i] == space:
  16.             space_ += 1
  17.     other = len_ - alph_ - num_ - space_
  18.     print('该字符串共有:英文字母%d个,数字%d个,空格%d个,其他字符%d个' % (alph_, num_, space_, other))
  19.     print(len_)


  20. cont = input('请输入您的字符串')
  21. tjzf(cont)
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-1 20:34:41 | 显示全部楼层
'abcdefghijgklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ',字母表里漏了一个"j"。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-3-1 20:59:43 | 显示全部楼层
zltzlt 发表于 2020-3-1 20:33
字母表那里有问题

太粗心了我真是,谢谢您
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-3-1 21:00:21 | 显示全部楼层
txxcat 发表于 2020-3-1 20:34
'abcdefghijgklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ',字母表里漏了一个"j"。

谢谢您啊,我太粗心了
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-3-1 15:20

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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