[英]Exception handling in python Counting the number of characters in a string
这是我的代码。
def word_count(my_string):
count=1
if type(my_string) == str:
try:
for eachCharacter in my_string:
if eachCharacter==' ':
count+=1
return count
except:
return "Not a string"
我必须得到 output 为:
Word Count: 4
Word Count: 1
Word Count: 7
Word Count: Not a string
Word Count: Not a string
Word Count: Not a string
但我得到:
Word Count: 4
Word Count: 1
Word Count: 7
Word Count: None
Word Count: None
Word Count: None
谁能帮我找到这个错误
Изучите enumerate([1, 2, ...]) 和 raise Exeption("...")
您需要处理输入不是字符串的情况:
def word_count(my_string):
count=1
if type(my_string) == str:
for eachCharacter in my_string:
if eachCharacter==' ':
count+=1
return count
return "Not a string"
正如您现在所拥有的,您的 function 不会显式返回任何内容,因此如果传入的 object 不是字符串,则返回None
。 此外,try/except 对你没有好处,因为try
中的代码永远不会抛出异常。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.