【hackerrank】-Day 16: Exceptions - String to Integer
尴尬,为什么我的解法不过?报错:Error reading result file.You should use exception handling concepts.
看着解法没问题啊?啥子情况?———–已经解决了,因为加的if判断导致的一直报上面的错!去掉if判断就好了。
30-exceptions-string-to-integer
Objective
Today, we’re getting started with Exceptions by learning how to parse an integer from a string and print a custom error message. Check out the Tutorial tab for learning materials and an instructional video!
Task
Read a string, , and print its integer value; if cannot be converted to an integer, print Bad String.
Note: You must use the String-to-Integer and exception handling constructs built into your submission language. If you attempt to use loops/conditional statements, you will get a score.
Input Format
A single string, .
Constraints
, where is the length of string .
is composed of either lowercase letters () or decimal digits ().
Output Format
Print the parsed integer value of , or Bad String if cannot be converted to an integer.
Sample Input 0
3
Sample Output 0
3
Sample Input 1
za
Sample Output 1
Bad String
Explanation
Sample Case contains an integer, so it should not raise an exception when we attempt to convert it to an integer. Thus, we print the .
Sample Case does not contain any integers, so an attempt to convert it to an integer will raise an exception. Thus, our exception handler prints Bad String.
Current Buffer (saved locally, editable)
#!/bin/python3
import sys
S = input().strip()
try:
int_S = int(S)
print(int_S)
except ValueError:
print('Bad String')
下面的是之前失败的写法,和上面的对比就是在if判断了,去掉if判断就可以了。
#!/bin/python3
import sys
S = input().strip()
if len(S)<1 or len(S) > 6:
print("len(S)<1 or len(S) > 6")
try:
int_S = int(S)
print(int_S)
except Exception as ex:
print('Bad String')
# ex_type, ex_val, ex_stack = sys.exc_info()
# print(ex_type)
# print(ex_val)
# for stack in traceback.extract_tb(ex_stack):
# print(stack)
Wrong Answer :(
Your code did not pass all the sample testcases.
Testcase 0 Testcase 1 Testcase 2 Testcase 3
Input (stdin)
3
Your Output (stdout)
3
Expected Output
3
Compiler Message
Error reading result file.You should use exception handling concepts.