50鱼币悬赏!!!!!字符串中符号判定的问题
如图是我编写的统计字符串的代码,但是为什么会将字符串中的其他符号识别为4个我百思不得其解,希望大佬解答!!拜谢! 我明白了!是if 与 else 的配对问题 同志们 回帖仍可领取鱼币哦!!! 白给啦for s in str:
if s . isalpha() : count_alpha += 1
elif s . isdigit() : count_digit += 1
else : count_other += 1 {:10_256:} {:10_256:} 楼上正解
我来补充下
出现这个原因是因为你的第二个if 和 那个else 配对了
由于是if else 搭配,所以你的每次迭代 count_digit 和 count_other 总会执行一个,两个相加等于7 也正好等于字符串总长
所以解决方案有两个
第一是 if elifelse 组合
if x1:
y1
elif x2:
y2
else:
y3
第二种就是用三个if独立判断
if x1:
yi
if x2:
y2
if x3:
y3
这两个都有可取之处,但就这道题而言,第一种比较好点,每次最多判断三次,而第二种每次都要判断3次,前者效率会比后者高 第二个if改成elif 蹭个币{:10_277:} 楼主厉害了 if,else配对问题正解 牛啊 {:9_241:}
蹭个币 蹭个币 学习了学习了 {:10_266:} 学习学习 . python语法非常讲究缩进,缩进不对,程序就出错{:10_256:}
页:
[1]
2