擅长:python、mysql、java
<p><code>.replace</code>对于您试图解决的问题来说是一个危险的用例。它正在使用模式匹配来进行更改,如果您的子字符串,即<code>balance[10:]</code>意外地与<code>balance[0:5]</code>匹配,您将悄悄地得到非常不可预测的结果</p>
<p>相反,我建议你更换</p>
<pre><code> accounts[i].replace(accounts[i][10:], balanceStr)
</code></pre>
<p>与</p>
<pre><code>accounts[i] = accounts[i][0:9] + balanceStr
</code></pre>
<p>另外,假设您的输入数据被<code>|</code>分割,您应该为输入数据创建数据保持器,而不是使用字符串,因为字符串是易变的,如果您的客户执行了非常大的事务,您的代码可能会开始不可预测地运行</p>
<p>相反,我会按照<code>account_number, pin_code, balance = '1000|1234|10000'.split('|')</code>的思路做一些事情,并将数据加载到一个列表中,其中每一行表示一个帐户或一个事务</p>