【发布时间】:2017-03-21 06:33:17
【问题描述】:
我想做一个简单的平方根计算器。
num = input('Enter a number and hit enter: ')
if len(num) > 0 and num.isdigit():
new = (num**0.5)
print(new)
else:
print('You did not enter a valid number.')
似乎我没有做错任何事情,但是,当我尝试运行程序并输入数字后,我遇到以下错误消息:
Traceback (most recent call last):
File "/Users/username/Documents/Coding/squareroot.py", line 4, in <module>
new = (num**0.5)
TypeError: unsupported operand type(s) for ** or pow(): 'str' and 'float'
Process finished with exit code 1
【问题讨论】:
-
您仔细检查输入是否可以转换为数字,然后实际上不必费心去做!
-
另外,
1.5或1E10这样的数字将无效 - 为什么? pythonic 方式是try将输入转换为float并仅在发生异常时打印错误消息。
标签: python calculator square-root calculation