Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/294.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 识别复数_Python_Complex Numbers - Fatal编程技术网

Python 识别复数

Python 识别复数,python,complex-numbers,Python,Complex Numbers,我正在为所有类型的数学算法创建一个计算器应用程序。但是,我想确定一个根是否复杂,然后为它设置一个异常。 我想到了这个: if x == complex(): print("Error 05: Complex Root") 但是,当我运行应用程序时,我知道x是一个复杂的根,因此没有识别或打印任何内容。我不能100%确定你在问什么,但是如果你想检查变量是否为复杂类型,你可以使用它。比如说, >>> isinstance(1j, complex) True x = 5j

我正在为所有类型的数学算法创建一个计算器应用程序。但是,我想确定一个根是否复杂,然后为它设置一个异常。 我想到了这个:

if x == complex():
    print("Error 05: Complex Root")

但是,当我运行应用程序时,我知道
x
是一个复杂的根,因此没有识别或打印任何内容。

我不能100%确定你在问什么,但是如果你想检查变量是否为复杂类型,你可以使用它。比如说,

>>> isinstance(1j, complex)
True
x = 5j
if isinstance(x, complex):
    print 'X is complex'
印刷品

X is complex
试试这个:

if isinstance(x, complex):
    print("Error 05: Complex Root")
这会为
2+0j
3j
打印错误,但不会为
2
2.12
等打印任何内容


还可以考虑在变量复杂时抛出错误(
ValueError
TypeError
)。

在NumPy v1.15中,包含一个函数:x


其中,
x
是要识别的数字。

一种方法是

if type(x) == complex():
    print("Error 05: Complex Root")

正如其他人所指出的,isinstance也有效

缩进是否与您的问题完全相同?有什么错误吗?你能在if语句中添加
else
部分吗?那么
complex()
呢?您是否应该向它传递一个参数并返回
True
False
?请稍等—如果复数根不是错误怎么办?有时候这是正确的答案。您确定应该将其标记为错误吗?还有
numpy.iscomplexobj
,这正是我的案例所需要的。