源代码
import re
hallo = input()
left , right = hallo.split("=")
tem = re.compile(r"((-?[0-9]*)([a-z]))")
tmp2 = re.compile(r"(-?[0-9^a-z]*)")
left_unknown = tem.findall(left)
left_KN = tmp2.findall(left)
right_unknown = tem.findall(right)
right_KN = tmp2.findall(right)
print(left_unknown,left_KN,right_unknown,right_KN)
get_unknown = left_unknown[0][2]
new = []
for i in left_KN:
try:
new.append(-int(i))
except ValueError:
pass
for i in right_KN:
try:
new.append(int(i))
except ValueError:
pass
sum_KN = sum(new)
new = []
for i in left_unknown:
try:
if i[1] == "":
new.append(1)
if i[1] == "-":
new.append(-1)
new.append(int(i[1]))
except ValueError:
pass
for i in right_unknown:
try:
if i[1] == "":
new.append(-1)
if i[1] == "-":
new.append(1)
new.append(-int(i[1]))
except ValueError:
pass
sum_unknown = sum(new)
ans = str(round(sum_KN/sum_unknown,3))
if len(ans.split(".")[1]) != 0:
ans += "0"*(3-len(ans.split(".")[1]))
if ans=="-0.000":
ans = ans[1:]
print(left_unknown[0][2]+"="+ans)