我试图将方程解析为准备好的文本(例如:“0.035 * Vp-31.5”),
提取十进制数, 将它们保存到列表中并将其替换为等式中的“X”。 然后归还一切......
奇怪的输出: ('0.035 * Vp-31.5',['0.03531.5'])
应该是: ('X * Vp-X',['0.035','31.5'])
def const(eqNo):
temp = ''
args = []
eq = eq_s[eqNo]
for i in range(len(eq)):
if eq[i].isdigit():
temp+=eq[i]
elif eq[i] == '.':
temp+=eq[i]
elif eq[i].isdigit == False:
if len(temp) != 0:
args.append(temp)
temp = ''
else:
if len(temp) != 0:
args.append(temp)
for j in args:
eq.replace(j,'X',1)
return eq, args
答案 0 :(得分:1)
错误与此
有关elif eq[i].isdigit == False:
你忘了isdigit之后的括号,它应该是
elif eq[i].isdigit() == False:
干杯!