<p>我现在被困在这个程序。我试图通过分子方程来确定化合物的分子量(只有Cs,Hs,Os)。我也不确定如何正确格式化[index+1],因为我正试图确定“x”后面的下一个字符是什么,看它是一个数字还是另一个分子</p>
<p>def main():</p>
<pre><code>C1 = 0
H1 = 0
O1 = 0
num = 0
chemicalFormula = input("Enter the chemical formula, or enter key to quit: ")
while True:
cformula = list(chemicalFormula)
for index, x in enumerate(cformula):
if x == 'C':
if cformula[index + 1] == 'H' or cformula[index + 1] == 'O':
C1 += 1
else:
for index, y in range(index + 1, 1000000000):
if cformula[index + 1] != 'H' or cformula[index + 1] != 'O':
num = int(y)
num = num*10 + int(cformula[index + 1])
else:
C1 += num
break
</code></pre>
<p>这就是我一直得到的错误</p>
^{pr2}$