我知道有一些关于此的主题但我尝试使用isinstance
我尝试了type()
并且
if type(NumGiven) == int : print "This number is an int"
elif type(NumGiven) == float : print "This number is a float"
但他们都只给我输出空白行。
这是我的代码:
NumGiven=''
while not NumGiven.isnumeric():
NumGiven=(input('Please enter a 7 or 8 digit number:'))
while len(NumGiven)<7 or len(NumGiven)>8:
NumGiven=(input('Please enter a 7 or 8 digit number:'))
if len(NumGiven)==8:
my_list=[int(i) for i in NumGiven]
print(sum([int(i) for i in NumGiven])/10.0)
所以你可以看到我需要它来告诉用户总和(在除以10时的结尾)是浮点数还是整数。
答案 0 :(得分:2)
如果您想检查float
是int
还是x
,您只需检查NumGiven = ''
while not NumGiven.isnumeric():
NumGiven = (input('Please enter a 7 or 8 digit number:'))
while len(NumGiven) < 7 or len(NumGiven) > 8:
NumGiven = (input('Please enter a 7 or 8 digit number:'))
if len(NumGiven) == 8:
my_list = [int(i) for i in NumGiven]
temp = sum([int(i) for i in NumGiven])
ans = temp / 10.0
if temp % 10 == 0:
print("int")
else:
print("float")
是否为10的倍数。
以下是演示事实的代码:
{{1}}
有关更一般的解决方案,您可能会对this standard library function感兴趣。