我正在尝试打印用户输入的数据类型并生成如下表:
ABCDEFGH = String
1.09 = float
0 = int
true = bool
etc.
我正在使用 Python 3.2.3 并且我知道我可以使用type()
获取数据的类型,但在Python中,所有用户输入都被视为字符串,我不知道如何确定输入是字符串、布尔值、整数还是浮点数。这是代码的一部分:
user_var = input("Please enter something: ")
print("you entered " + user_var)
print(type(user_var))
总是返回str
对于字符串。
from ast import literal_eval
def get_type(input_data):
try:
return type(literal_eval(input_data))
except (ValueError, SyntaxError):
# A string, so return str
return str
print(get_type("1")) # <class 'int'>
print(get_type("1.2354")) # <class 'float'>
print(get_type("True")) # <class 'bool'>
print(get_type("abcd")) # <class 'str'>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)