Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.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 从复数中获取值的虚部和实部;92+;23i";?_Python_String_Numbers_Extract - Fatal编程技术网

Python 从复数中获取值的虚部和实部;92+;23i";?

Python 从复数中获取值的虚部和实部;92+;23i";?,python,string,numbers,extract,Python,String,Numbers,Extract,我想从字符串中提取数字,并将它们存储在不同的变量中 例如:-“92+23i”是一个复数。我想在变量num\u real中存储92,在num\u imagine中存储23。您的字符串非常接近于作为Python文本进行解析: >>> s = '92+23i' >>> import ast >>> ast.literal_eval(s.replace('i', 'j')) (92+23j) 使用num.real和num.imag访问实部和虚部Py

我想从字符串中提取数字,并将它们存储在不同的变量中


例如:-
“92+23i”
是一个复数。我想在变量
num\u real
中存储92,在
num\u imagine
中存储23。您的字符串非常接近于作为Python文本进行解析:

>>> s = '92+23i'
>>> import ast
>>> ast.literal_eval(s.replace('i', 'j'))
(92+23j)

使用
num.real
num.imag

访问实部和虚部Python具有预定义的类型,因为它希望字符串的类型为
“a+bj”
(注意
j
而不是
i
,并且应该没有空格)。在您的情况下,您可以将字符串中的
“i”
替换为
“j”
,并获得所需的值,如下所示:

>>> my_str = "92+23i"
>>> my_num = complex(my_str.replace('i', 'j'))
从这个复数中,您需要使用
my_num.imag
为虚数部分提取所需的值,并使用
my_num.real
为复数的实数部分提取所需的值。例如:

>>> my_num.imag
23.0
>>> my_num.real
92.0

这只是一个例子,我的意思是“23x+23y=0”,只提取数字。@WILDFIRE你的问题当时还不清楚。对于这一点,你可能需要看一看:这些答案超出了我的理解。我不明白。