鱼C论坛

 找回密码
 立即注册
查看: 1288|回复: 3

[已解决]python 零基础入门 19课时课后习题

[复制链接]
发表于 2018-1-16 11:48:25 | 显示全部楼层 |阅读模式

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

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

x
def count(*param):
    length=len(param)
    for i in range(length):
        letters=0
        digit=0
        space=0
        others=0
        for each in param[i]:
            if each.isalpha():
                letters+=1
            elif each.isdigit():
                digit+=1
            elif each.isspace():
                space+=1
            else:
                others+=1
        
   
    print('第%d个字符串共有:英文字母%d个,数字%d个,空格%d个,其他%d个'%(i+1,letters,digit,space,others))

这个代码最后   print('第%d个字符串共有:英文字母%d个,数字%d个,空格%d个,其他%d个'%(i+1,letters,digit,space,others))  中的 i+1  i不应该是一个变量么?
而且这个代码只打印出最后一个字符串的信息
最佳答案
2018-1-16 12:17:52
夕阳54 发表于 2018-1-16 12:07
谢谢答主!
我表述的有问题,小白见笑了。
我的问题是:假如要判定字符串有20个字符       for i in ra ...

那就设计一个列表分别存放每次的值,最后加起来
每个函数的设计都是根据需求来写的
你有新的需求,根据你的知识进行改进就行了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-1-16 11:51:34 | 显示全部楼层
格式化输出,其中的 %d 只是占位符而已
用后面的变量依次替代这些%d
举个简单例子
"I %s fishC" % 'love'
等价于将 love 替换 %s,所以结果为 "I love fishC"

同时一个字符串中可以有多个占位符,这里就是这种情况
再举个简单例子,比如
"%d 只 %s" % (1, "狗")
等价于将 1 替代 %d, 将 狗 替代 %s,所以结果为 "1 只狗"
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-1-16 12:07:28 | 显示全部楼层
BngThea 发表于 2018-1-16 11:51
格式化输出,其中的 %d 只是占位符而已
用后面的变量依次替代这些%d
举个简单例子

谢谢答主!
我表述的有问题,小白见笑了。
我的问题是:假如要判定字符串有20个字符       for i in range(length)   这里就是说  i 是0到20之间的整数   那这题要打印的话岂不是
第1个字符串共有:英文字母xx个,数字xx个,空格xx个,其他xx个
第2个字符串共有:英文字母xx个,数字xx个,空格xx个,其他xx个
.
.
.
第20个字符串共有:英文字母xx个,数字xx个,空格xx个,其他xx个

然而实际运行中  这程序只打印  最后一个字符串信息
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-1-16 12:17:52 | 显示全部楼层    本楼为最佳答案   
夕阳54 发表于 2018-1-16 12:07
谢谢答主!
我表述的有问题,小白见笑了。
我的问题是:假如要判定字符串有20个字符       for i in ra ...

那就设计一个列表分别存放每次的值,最后加起来
每个函数的设计都是根据需求来写的
你有新的需求,根据你的知识进行改进就行了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-25 15:23

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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