简单的函数返回类型

时间:2015-04-18 21:10:44

标签: python types

我想编写一个简单的小函数来将类型返回给我。不幸的是我得到了所有那些缩进错误(我使用了崇高的文本2 ...不知道为什么我一直得到那些)

def get_the_type(value):
if value== "NULL" or value=="":
    return(type(None))
elif (value=="{"): 
    return (type([]))
elif isinstance(value,(int)):
    return type(1))
elif isinstance(value,(float)):
    return(type(1.1))
else:
    return (type("bla"))

有人能告诉我我的错误在哪里吗?

2 个答案:

答案 0 :(得分:3)

在def中缩进并删除额外的paren:

def get_the_type(value):
    if value== "NULL" or  value ==  "":
        return "NoneType"
    elif value == "{": 
        return "dict" # maybe set?
    elif isinstance(value,  int):
        return "int" # <- removed )
    elif isinstance(value, float):
        return "float"
    else:
        return "str"

如果您只想查看类型如上所述使用字符串,则不确定是否要使用该类型或仅查看其类型。此外,[]是一个列表,您有{作为值,因此应该是dict或set。

答案 1 :(得分:2)

您缺少相对于函数定义的if语句的缩进。