找到字符串值的长度,而不是数字值的长度

时间:2019-03-08 13:53:12

标签: python python-3.x

我尝试查找字符串值的长度,但也不需要获取数字值的长度。

如何解决此问题?这是我的代码:

def CalcStringlen(string):
    if type(string) == int:
        return("Sorry integers don't have length")
    else:
        return len(string)

string = input("Enter the string")
print(CalcStringlen(string))

2 个答案:

答案 0 :(得分:0)

使用ast.literal_eval

import ast 

def CalcStringlen(string):
    if type(string) == int:
        return("Sorry integers don't have length")
    else:
        return len(string)

string = ast.literal_eval(input("Enter the string: "))
print(CalcStringlen(string))

输出:

Enter the string: 1234                                                                                                                         
Sorry integers don't have length  

答案 1 :(得分:0)

您的input调用返回一个字符串。即使其中仅包含数字,它仍然是字符串,并且其类型永远不会是int。更改此测试:

if type(string) == int:

if string.isdigit():