我正在为所有类型的数学算法创建一个计算器应用程序。但是,我想确定一个根是否复杂,然后有一个例外。 我想出了这个:识别复数
if x == complex():
print("Error 05: Complex Root")
然而,没有什么是确定的,或者当我运行应用程序打印,知道x
是一个复杂的根源。
我正在为所有类型的数学算法创建一个计算器应用程序。但是,我想确定一个根是否复杂,然后有一个例外。 我想出了这个:识别复数
if x == complex():
print("Error 05: Complex Root")
然而,没有什么是确定的,或者当我运行应用程序打印,知道x
是一个复杂的根源。
我不是100%肯定你问什么,但如果你想检查一个变量是复合型的,你可以使用isinstance。例如,
x = 5j
if isinstance(x, complex):
print 'X is complex'
打印
X is complex
谢谢!有用! – enginefree 2012-03-22 00:00:28
试试这个:
if isinstance(x, complex):
print("Error 05: Complex Root")
这将打印错误2 + 0j
,3j
,但2
不显示任何信息,2.12
等
也想想throwi当变量很复杂时发生错误(ValueError
或TypeError
)。
缩进与您的问题完全相同吗?有没有错误?你可以添加'if'语句的'else'部分吗?怎么样'复杂()'?你不应该通过一个参数并返回“真”或“假”吗? – Tadeck 2012-03-21 23:57:16
等一下 - 如果一个复杂的根不是一个错误呢?有时候这是正确的答案。你确定它应该被标记为错误吗? – duffymo 2012-03-22 00:02:13