启零 发表于 2021-10-10 17:01:55

第18讲的动动手,第二题,求助

本帖最后由 启零 于 2021-10-10 20:45 编辑

题目:编写一个函数 findstr(),该函数统计一个长度为 2 的子字符串在另一个字符串中出现的次数。

弱鸡本人写的答案:
def findstr(*zifu,tongji):

   num1 = zifu.count(tongji)
   print('字母',tongji,'在句子中出现次数为:',num1)
zifu = input('请输入目标字符串')
tongji = input('请输入子字符串')
findstr(zifu,tongji)


为何pycharm报错(报错请看图片):
findstr() missing 1 required keyword-only argument: 'tongji'

说’tongji‘缺少一个参数,但是在传入中已经写入im了。




补充:
加* 号,补充指定传参后,为何会传出来结果为0次!!!

逃兵 发表于 2021-10-10 17:04:06

别加*
def findstr(zifu,tongji):

   num1 = zifu.count(tongji)
   print('字母',tongji,'在句子中出现次数为:',num1)
zifu = input('请输入目标字符串')
tongji = input('请输入子字符串')
findstr(zifu,tongji)

傻眼貓咪 发表于 2021-10-10 17:08:04

你的代码中,函数 findstr(*zifu,tongji) 因为你放了 *,所以报错

15013523101 发表于 2021-10-11 19:47:04

num1 = zifu.count(tongji)    这一句改一下
页: [1]
查看完整版本: 第18讲的动动手,第二题,求助