我正在用Python编写一些代码,该代码根据用户的选择来计算三角形或圆形的面积。我想写“如果用户选择的是C(用于圆圈),请继续运行”,但我写的所有内容均无效,并且显示错误。
我有:
option = raw_input('Enter C for Circle and T for Triangle: ')
circle = 'C'
tringle = 'T'
if option == circle:
return option
答案 0 :(得分:1)
如注释中所述,除非它来自函数,否则无法返回值。
如果您想完成一个正在运行的示例,可以轻松地使用while
循环,如下所示:
circle = 'C'
tringle = 'T'
value = True
while value:
option = raw_input('Enter C for Circle and T for Triangle: ')
# check lower() so capitalization doesn't matter
if option.lower() == circle:
# do something
print("Do something, 'C' has been selected")
pass
else:
value = False
作为一个解释,如果您不清楚上面发生的事情。如果所选选项为circle
,则while循环始终为True,因此循环永远不会终止,并且迭代会继续。如果选择的选项不是circle
,则value
的值将不是True,因此循环将在再次执行循环中的代码之前中断。
答案 1 :(得分:0)
尽管没有定义任何函数,但由于正在调用// warning: ‘struct visit_items’ has virtual functions and
// accessible non-virtual destructor [-Wnon-virtual-dtor]
,所以得到struct visit_items
{
virtual ~visit_items() = default;
virtual void action(std::string *s) = 0;
};
。根据Python语法,您只能从函数内部返回。我建议您阅读有关如何创建Python函数的信息(此article很好地解释了它)