欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

【hackerrank】-Day 16: Exceptions - String to Integer

程序员文章站 2022-04-03 08:13:43
...

尴尬,为什么我的解法不过?报错: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.

相关标签: hackerrank