这是我的代码:
def calc_area(radius):
return (radius **2) * (math.pi)
def calc_circ (radius):
return (math.pi * radius) * 2
radius = float(input('Please enter the cirlcle\'s radius: '))
print ('The area of the the circle is', calc_area(radius), 'and the circumference is', calc_circ(radius))
如何确保用户不输入字母?
答案 0 :(得分:1)
在进行任何计算之前,请尝试检查用户输入以确保他们提交了一个数字。
$(".test").click(function(){
console.log("name: ", $(this).closest('tr').index()-1);
});
或者在你的情况下:
$(".test").click(function(){
console.log("name: ", $('#sum_table tr:not(.titlerow)').index($(this).closest('tr')));
});
答案 1 :(得分:0)
在这里,您也可以使用try catch!
ip = input('Please enter the cirlcle\'s radius: ')
if isinstance(ip, int):
temp = float(ip)
答案 2 :(得分:0)
我个人喜欢断言声明
def calc_area(radius):
assert isinstance(radius, int) or isinstance(radius, float), "Radius must be a number."
return (radius **2) * (math.pi)
当用户尝试传递数字以外的内容时,他们会得到:
>>> calc_area("a")
Traceback (most recent call last):
File "<pyshell#5>", line 1, in <module>
calc_area("a")
File "<pyshell#1>", line 2, in calc_area
assert isinstance(radius, int) or isinstance(radius, float), "Radius must be a number."
AssertionError: Radius must be a number.
如果稍后使用代码,可以添加try / catch语句,但其他答案更适合与简单用户进行交互。