数字的鲁棒输入
描述
获得用户输入的一个数字,可能是浮点数或复数,如果是整数仅接收十进制形式,且只能是数字。对输入数字进行平方运算,输出结果。
要求:
(1)无论用户输入何种内容,程序无错误;
(2)如果输入有误,请输出"输入有误"。
输入输出示例
输入 | 输出 |
---|---|
1+2j | (-3+4j) |
abd | 输入有误 |
解答:
s = input()
try:
if complex(s) == complex(eval(s)):
print(eval(s)**2)
except:
print(“输入有误”)
知识点:
1.complex(real, imaginary) 函数通过指定实数和虚数来返回复数。
2.complex()和complex(eval())之间的比较将能够排除非数字类型的输入。