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你的问题当时还不清楚。对于这一点,你可能需要看一看:这些答案超出了我的理解。我不明白。